GridView SelectRow功能效果不可见

时间:2018-04-24 14:41:08

标签: c# winforms gridview devexpress gridcontrol

我正在尝试使用以下代码选择我的gridView的所有行(在WinForms窗口的构造函数中):

        gridControl1.DataSource = myObj;
        gridControl1.ForceInitialize();

        for (int i = 0; i < gridView1.DataRowCount; i++)
        {
            if (((MyClass)gridView1.GetRow(i)).MyProperty)
                gridView1.SelectRow(i);
        }

在debug中,我检查gridView1.IsRowSelected()为所有行返回true(加载表单后)。但是,它不会显示(不选中复选框)。我究竟做错了什么?我尝试在表单加载时执行此代码,但它没有帮助。

1 个答案:

答案 0 :(得分:1)

  

ColumnViewOptionsSelection.MultiSelect 属性设置为true。

        try
        {
            gridView1.BeginUpdate();
            for (int i = 0; i < gridView1.DataRowCount; i++)
            {
                var rowhandle = gridView1.GetRowHandle(i);
                if (((MyClass)gridView1.GetRow(rowhandle)).MyProperty)
                    gridView1.SelectRow(rowhandle);
            }
        }
        finally
        {
            gridView1.EndUpdate();
        }

DataRowIndex和Rowhandle在devexpress中有所不同。