关于developer express 的 RepositoryItemCheckEdit 多选设置

.net第三方控件developer express,竟然发现里面的模板列RepositoryItemCheckEdit默认的状态和单选钮一样,虽然我们有时候也很需要这样的功能,但是有时候我们也要有复选按钮的功能

1.将要设置的列,设一个模板列为RepositoryItemCheckEdit1

2.绑定要显示的字段,若没有可以自己构造一个空列,如:select '1' as 新列 ,T.*,from table1 T,也可设为'True'或者'Yes',视个人情况而定

3.设置事件:repositoryItemCheckEdit1_QueryCheckStateByValue

4.代码示例如下:

  1. 4.1 //根据绑定的值显示选择状态 
  1. private void repositoryItemCheckEdit1_QueryCheckStateByValue(object sender, DevExpress.XtraEditors.Controls.QueryCheckStateByValueEventArgs e) 
  2.         { 
  3.             string val = ""
  4.             if (e.Value != null
  5.             { 
  6.                 val = e.Value.ToString(); 
  7.             } 
  8.             else 
  9.             { 
  10.                 val = "False";//默认为不选  
  11.             } 
  12.             switch (val) 
  13.             { 
  14.                 case "True"
  15.                 case "Yes"
  16.                 case "1"
  17.                     e.CheckState = CheckState.Checked; 
  18.                     break
  19.                 case "False"
  20.                 case "No"
  21.                 case "0"
  22.                     e.CheckState = CheckState.Unchecked; 
  23.                     break
  24.                 default
  25.                     e.CheckState = CheckState.Checked; 
  26.                     break
  27.             } 
  28.             e.Handled = true
  29.         } 
  1. 4.2 //由选择状态改变绑定列的值 
  2.         private void repositoryItemCheckEdit1_QueryValueByCheckState(object sender, DevExpress.XtraEditors.Controls.QueryValueByCheckStateEventArgs e) 
  3.         { 
  4.             if (e.CheckState == CheckState.Checked) 
  5.             { 
  6.                 gridView1.SetRowCellValue(gridView1.FocusedRowHandle, "绑定列", 1); 
  7.             } 
  8.             else 
  9.             { 
  10.                 gridView1.SetRowCellValue(gridView1.FocusedRowHandle, "绑定列", 0); 
  11.             } 
  12.         } 
posted @ 2012-11-28 14:02  therockthe  阅读(460)  评论(0)    收藏  举报