zoukankan      html  css  js  c++  java
  • GridControl 添加全选列

    这里通过List对象绑定GridControl,且不用在GirdControl界面中添加任何列,实现CheckBox列的方法

    1、列表中出现CheckBox列

    非常简单,在绑定的List实体中,增加一列bool型的属性,如public bool 选择 { set; get; },直接绑定到gird控件就能出现Check列,但一定要给此属性赋初值false或true。

    2、表头出现全选框,控制表格所有列checkbox状态,比较复杂

    a. 从工具箱中拖出一个dev checkEdit控件(vs自带的checkbox也行,只是风格不统一),放置在gdv控件的表头部分。

       如果工具箱中没有找到这个控件,右键单击工具箱某条目,点击“选择项”,弹出“选择工具箱项”,在.net Fromwork组件中,通过筛选器选择checkedit,一定注意版本,将其打钩,确定就能将checkEidt添加进工具箱。

       chedkedit放置到表头上后,位置可能无法调整,将其achor调整为top,right后就可用方向键微调位置了。再改回top,left也没问题。

    b.为全选控件添加事件

    private void chkCut_CheckedChanged(object sender, EventArgs e)
            {           
                for (int i = 0; i < gdvPassbyArl.RowCount; i++)
                {
                    //就用这条语句虽然能直接将界面上的打上勾,但是如果该列正好是排序状态下,行顺序会立即调整,导致此循环混乱
                    //所以改用下面两句取出实体,给实体赋值。最后再gdcPassbyArl.RefreshDataSource()更新界面。
                    //gdvPassbyArl.SetRowCellValue(i, "选择", checkEdit1.Checked);
                    AirlineBasic arl = gdvPassbyArl.GetRow(i) as AirlineBasic;
                    arl.选择 = chkCut.Checked;
                }
                gdcPassbyArl.RefreshDataSource();
            }

    c. 将实体中bool类型列的名称隐藏,同时,固定其宽度

    gdvPassbyArl.Columns["选择"].OptionsColumn.ShowCaption = false;

    gdvPassbyArl.Columns["选择"].MaxWidth = 50;
    gdvPassbyArl.Columns["选择"].MinWidth = 50;

    完成。

    此方法不足之处:

    1、此方法直接绑定List实体类,没有在gird界面中添加对应列,因此无法影响每一行的check事件,如果有此需求,只能在grid界面中为实体添加每一列filedname,对bool属性添加列后,选择ColumnEdit为new...CheckEdit。然后再到in-palce Editor中设置该CheckEdit的对应事件。

    2、列表中checkBox列只能居中,没有找到方法实现Near或Far,因此标题栏上的checBox只能目测调整位置,与表中的checkbox对齐

    3、此方法不能为check列设置标题文字,原因为上面2,设置文字标题后无法对齐

  • 相关阅读:
    P3382 【模板】三分法
    1269: [AHOI2006]文本编辑器editor
    1500: [NOI2005]维修数列
    4196: [Noi2015]软件包管理器
    django 表单系统 之 forms.ModelForm
    django 表单系统 之 forms.Form
    django ORM 批量操作:批量插入bulk_create
    django 多数据库时 ORM语句 选择数据库
    django 配置 多数据库
    django模板复用 extends,block,include
  • 原文地址:https://www.cnblogs.com/mol1995/p/9896637.html
Copyright © 2011-2022 走看看