Devexpress GridView更改事件中的自定义单元格外观
我正在使用以下代码禁用XtraGrid GridView中的复选框列(按预期工作)。从这篇文章中获得了代码: 问题 当某个列发生更改并具有值时,我希望再次启用该复选框。这就是我被卡住的地方,我想我可以在GridView的CellValueChanged事件中更改它,但我不知道如何引用该行的单元格/列:Devexpress GridView更改事件中的自定义单元格外观,devexpress,devexpress-windows-ui,Devexpress,Devexpress Windows Ui,我正在使用以下代码禁用XtraGrid GridView中的复选框列(按预期工作)。从这篇文章中获得了代码: 问题 当某个列发生更改并具有值时,我希望再次启用该复选框。这就是我被卡住的地方,我想我可以在GridView的CellValueChanged事件中更改它,但我不知道如何引用该行的单元格/列: 您需要刷新“忽略”列中的单元格。您可以通过调用方法来实现这一点。要标识需要刷新的行,CellValueChanged事件提供e.RowHandle参数 private void GridVie
您需要刷新“忽略”列中的单元格。您可以通过调用方法来实现这一点。要标识需要刷新的行,CellValueChanged事件提供e.RowHandle参数
private void GridViewWeeklyPlan_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (e.Column.FieldName != "Reason") return;
GridView view = (GridView)sender;
view.RefreshRowCell(e.RowHandle, view.Columns["Ignore"]);
}
将再次引发CustomDrawCell事件以更新单元格外观
private void GridViewWeeklyPlan_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (e.Column.FieldName != "Reason") return;
if (String.IsNullOrEmpty(e.Value.ToString()))
{
//Make sure the checkbox is disabled again
}
else
{
//Enable the checkbox to allow user to select it
}
}
private void GridViewWeeklyPlan_CellValueChanged(object sender, DevExpress.XtraGrid.Views.Base.CellValueChangedEventArgs e)
{
if (e.Column.FieldName != "Reason") return;
GridView view = (GridView)sender;
view.RefreshRowCell(e.RowHandle, view.Columns["Ignore"]);
}