我有一个简单的RadGridView,在我有Checkbox
的第一个单元格中,如果Checkbox
处于检查状态,我想更改行的颜色,如果这个Checkbox
,则返回原始颜色{ {1}}处于未选中状态。
目前这是我试过的内容,当我的Checkbox
被选中时,这会画我的行但是如果取消选中Checkbox
,我该如何更改为原始颜色?
private void radGridView1_RowFormatting(object sender, RowFormattingEventArgs e)
{
if ((bool)e.RowElement.RowInfo.Cells["Select"].Value == true)
{
e.RowElement.DrawFill = true;
e.RowElement.GradientStyle = GradientStyles.Solid;
e.RowElement.BackColor = Color.SkyBlue;
}
else
{
e.RowElement.ResetValue(LightVisualElement.BackColorProperty, ValueResetFlags.Local);
e.RowElement.ResetValue(LightVisualElement.GradientStyleProperty, ValueResetFlags.Local);
e.RowElement.ResetValue(LightVisualElement.DrawFillProperty, ValueResetFlags.Local);
}
}
答案 0 :(得分:0)
您拥有的代码是正确的,它应该使用选中的第一个单元格更改行的颜色。但是,有一点需要注意。复选框单元格的编辑器是永久编辑器,只有在更改网格中的当前行后,其值才会提交给单元格。如果这对您不起作用,则可以在更改复选框状态后立即提交值。您可以在此处了解如何操作:http://www.telerik.com/help/winforms/gridview-editors-howto-checkboxeditor-submit-value-change.html