怎样使GridView中满足某个条件的行可编辑,其余行不可编辑?

DXperience是个很优秀的第三方控件包,使用起来非常方便,但有时候某些功能的实现在文档中不太容易找到解决方案,比如下面要提到的这个功能我就在文档中找了很久也没找到,最后还是在官方论坛上找到的。

具体问题是这样的:我需要使GridView中满足某个条件的行可编辑,其余的行不可编辑。问题就是这样,很简单,但解决起来还真费了不少神。最后的解决方法是这样的,在GridView的ShowingEditor事件中来判断条件,满足条件就不可编辑,否则可编辑,实现代码片段如下:

private void gridView1_ShowingEditor(object sender, CancelEventArgs e)
         {
             DataRow row = this.gridView1.GetDataRow(this.gridView1.FocusedRowHandle);
             if (row != null)
             {
                 if (Convert.ToInt32(row["Section"]) % 2 == 0)
                 {
                     e.Cancel = true;
                 }
             }
         }

其中Convert.ToInt32(row["Section"]) % 2 == 0就是条件,可根据实际情况更改。

原文地址:https://www.cnblogs.com/ChineseMoonGod/p/5479336.html