有没有一种方法可以使XtraGrid中列为只读的单元格可编辑

本文关键字:只读 单元格 编辑 XtraGrid 一种 可以使 方法 有没有 | 更新日期: 2023-09-27 18:19:38

我的网格是这样的。

Key Value
1    A
2    B
3    C

我的网格中有只读的"值"列。"Value"列的columndedit与memoryedit存储库相关联。现在我想做的是在一些条件下,比如当键=2时,我希望我的值单元格是可编辑的。

我试着让整列ReadOnly=false。

然后处理ShowingEditor以取消对Key=2以外的所有值的编辑,但这甚至阻止了为其他值打开编辑器。

我想要的是能够看到编辑,但它应该仅供其他人阅读对于Key=2,它应该是可编辑的。

请帮忙!

有没有一种方法可以使XtraGrid中列为只读的单元格可编辑

尝试按以下方式处理ShownEditor事件(半伪代码):

var grid = sender as GridView;
if (grid.FocusedColumn.FieldName == "Value") {
    var row = grid.GetRow(grid.FocusedRowHandle) as // your model;
    // note that previous line should be different in case of for example a DataTable datasource
    grid.ActiveEditor.Properties.ReadOnly = // your condition based on the current row object
}

通过这种方式,您可以根据需要完善已经打开的编辑器。