由于Dev GridControl在支持多选的时候,如果如果焦点行单独加了样式,Appearance-->FocusedRow & HideSelectionRow
这个时候,鼠标焦点转移到其他控件时候,由于GridControl失去了焦点,故GridControl当前行(焦点行)上的样式就丢失了。
Dev是一套很成熟的商用控件,当然,解决方案还是有的,如下:
设置EnableAppearanceFocusedCell = False, EnableAppearanceFocusedRow = False为false,然后自定义RowStyle事件,具体设置如下:
OptionsSelection --> CheckBoxSelectorColumnWidth = 28, MultiSelectMode = CheckBoxRowSelect, EnableAppearanceFocusedCell = False, EnableAppearanceFocusedRow = False, MultiSelect = True
FocusRectStyle --> RowFullFocus
private void gridView1_RowStyle(object sender, DevExpress.XtraGrid.Views.Grid.RowStyleEventArgs e) { if (e.RowHandle == this.gridView1.FocusedRowHandle) e.Appearance.BackColor = Color.LightGreen; }