單列全部使用RepositoryCheckEdit

1.簡介

RepositoryItemCheckEdit默認有三種狀態,選中狀態、未選中狀態和半選中狀態(半選中狀態通常用在TreeList中如果父節點下的子節點有選中的有未選中的,則父節點狀態爲半選中狀態)。

通常情況下我們只用選中和非選中狀態即可,修改方式如下:

默認情況下,RepositoryItemCheckEdit的空值,會顯示爲灰色半選中狀態,要想改爲白色空狀態,需要修改NullStyle屬性爲Unchecked。

2.應用

顧名思義,該控件在gridControl中實現一列CheckEdit,用於進行勾選,實際情況中,我們多以多選爲需求,RepositoryCheckEdit實現多選的方式有2中,分別如下:

1.若RepositoryItemCheckEdit所在的列未綁定數據源,那麼該列默認只可以單選;如果綁定了數據源,那麼可以同時多選。

此時,將數據源中的字段綁定到FieldName即可,如下:

此時,將字段的值與checkedit的值進行對應即可,如下

List<Student> studentList = new List<Student> { new Student() { Selected="N",Name="張三",Age=22 }, 
                new Student() { Selected="N",Name="李四",Age=20 }, new Student() { Selected="N",Name="王五",Age=24}};
repositoryItemCheckEdit1.ValueUnchecked = "N";
//定義選中狀態值
repositoryItemCheckEdit1.ValueChecked = "Y";
//綁定數據
gridControl1.DataSource = studentList;

此處,對應的值可以是字符串,數字或其他類型,最好與字段值對應,如數據庫中保存的是char(0和1),那麼此處即可定義1和0.

2.設置gridview的MultiSelect和MultiSelectMode屬性

此時,直接將數據源綁定到gridControl 即可

List<Student> studentList = new List<Student> { new Student() { Selected="N",Name="張三",Age=22 }, 
                new Student() { Selected="N",Name="李四",Age=20 }, new Student() { Selected="N",Name="王五",Age=24}};
gridControl2.DataSource = studentList;

本片主要介紹,repositorycheckeidt簡單的應用於單列的情況,可以參考一下帖子:

基於DevExpress開發的GridView如何實現一列顯示不同的控件類型

DevExpress XtraGrid RepositoryItemCheckEdit 複選框多選的解決方法(轉)

分析:

平時的開發中,應用本文上述方法即可以方便的進行開發,參考的帖子中的內容其實和上述方法是一樣的,只是,在值對應轉換的部分轉換成了代碼,並沒有在設計器中設置。若是,項目開發過程中,是使用代碼進行控件創建以及事件註冊,則可以用帖子中的方法,比如我下一篇gridControl在同一列的不同行創建不同的控件(以CheckEidt搭配ButtonEdit爲例)要介紹的。

在下一篇中,我將描述如何在同一列中構建不同的控件,並實現與本帖相似的checkedit多選功能,並標註出應該重點注意的地方。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章