1. 程式人生 > >DEV 中 gridControl1新增checkbox 列

DEV 中 gridControl1新增checkbox 列

直接在 gridControl1.DataSource要繫結的表裡dt增加一個BOOL列dt.Columns.Add("isCheck", System.Type.GetType("System.Boolean")).SetOrdinal(0);即可。但是記得gridControl1需要繫結isCheck列,才能顯示出複選框。

設定為多選:
gridView1 .OptionsSelection.MultiSelect = true;
gridView1 .OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.RowSelect;

但是這樣有一個BUG。就是不能馬上捕捉複選框的改變事件。只能通過gridView1_CellValueChanged等來捕捉,但是有時候我們需要改變的時候就馬上捕捉。

我們對之前的改造:

gridControl增加一個編輯列,把編輯列設定為複選框


然後在頁面載入的時候把這個的改變事件加入:

private void InitCheckItems()
        {
            repositoryItemCheckEdit1.CheckedChanged += new EventHandler(repositoryItemCheckEdit1_CheckedChanged);
        }
        void repositoryItemCheckEdit1_CheckedChanged(object sender, EventArgs e)
        {
            CheckState check = (sender as DevExpress.XtraEditors.CheckEdit).CheckState;
            if (check == CheckState.Checked)
            {
                你自己要處理的事件
            }
        }

即可。

上面那樣的程式碼,我們可以實現動態的選擇。但是有一個小BUG,就是當我們點選選擇的時候需要點選2次才能是選中狀態。但是這樣使用者體驗度極差!

我們需要在這裡改造一下:

在給資料來源新增BOOL列的時候,需要迴圈給該列賦值

foreach (DataRow _Dr in DtUnit.Rows)
                _Dr["isCheck"] = false;

然後把屬性EditorShowMode = MouseDown即可。

相關推薦

DEV gridControl1新增checkbox

直接在 gridControl1.DataSource要繫結的表裡dt增加一個BOOL列dt.Columns.Add("isCheck", System.Type.GetType("System.Bo

asp.net gridview新增checkbox,用於全部選中記錄或取消全選

方法一:使用javascript程式碼控制                          前臺程式碼: <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">

mysql查詢的結果表新增作為排序使用 @row_num

// 在結果表後在加一列遞增一 作為排名使用 // 為了分頁的時候排名是在整體資料上進行排序而不是每一頁都是從1開始這個 @row_num應該是動態的 #{offset} 和limt #{offset} 一致 SET @row_num = 11; // 由於查詢的條件

vb 如何在對Access建立新欄位()的過程自動新增的預設值

搞了一下午,終於解決了,希望能幫助到他人。 '通用-宣告 Dim conn As New ADODB.Connection Dim rs As New ADODB.Recordset Dim sql$ '連線Data.mdb資料庫 Public Sub openConn()

GridView動態新增模板和其子控制元件集合

1 using System; 2 using System.Data; 3 using System.Configuration; 4 using System.Linq; 5 using System.Web; 6 using System.Web.Security; 7 using Sy

layui table新增序號

頁面檔案在相應的位置上新增下面兩個模組的程式碼: 第一模組:在render table 時新增: { field: 'rank', title: '序號', width: 80, sort: true, fixed: 'left', templet: '#rank' } 第二模組:在<script

mysql給查詢結果新增序號

 生成一個欄位(非表中欄位)用以記錄排序   【類比為oracle資料庫中的rownum】     MySQL中一個表(表名:stuscore)     欄位有:id(主鍵)、stuid(學號)、sname(學生姓名)、subject(課程名稱)、score(分

關於Mybatis將查詢結果新增常量並返回

引言在使用mybatis的時候,查詢一個集合返回給前臺頁面,在有的時候,我們會新增一個常量欄位到物件或者集合中,來標識這個物件屬於的型別等等情況,當前臺進行再次請求的時候攜帶此變數進行請求.但是:如果在資料庫中並沒有這個欄位的時候,查詢集合我們就需要前臺進行這個欄位的編寫,寫

Devgridview——MainView的切換和新增內建編輯按鈕

使用預設的gridview1   主檢視的切換:構造DataTable作為gridControl的資料來源 gridControl1.MainView = gridView1; //設定主

winform 給DataGridView的表頭新增CheckBox

在C/S架構中,給DataGridView的表頭新增CheckBox控制元件:         新增類: /// <summary>     /// 給DataGridView新增全選     /// </summary>     public c

GridviewCheckBox:賦值、改變值觸發事件

前臺、模板列 <asp:TemplateField HeaderText="" SortExpression="id" Visible="False">、 <ItemTemplate> <asp:Labe

在datagrid新增編號

效果如下:1:新增模板列  <asp:TemplateColumn HeaderText="編號">         <ItemTemplate>          <asp:Label Runat="server" ID="lblId">

[.Net碼農][WPF] ListView View 的模板替換(新增/刪除

===================================================== 今天在網上閒逛,突然發現這邊文章竟然被人毫不尊重原作者權益而胡亂轉載,讓人氣憤。 本著知識共享的目的,歡迎大家轉載,但是轉載請保留本文的原始連結,謝謝!  本文原作者:YuanHui =====

DataTable新增序號

/// <summary> /// 新增一列序號 /// </summary> /// <param name="dt">需要新增序號列的表</param>

在mysql給查詢的結果新增序號

上面的這個連結其實只適用於sql server2005 在mysql中的方法是下面這篇部落格 把部落格中的內容貼上一下 第一種方法: select   (@i:[email protected]+1)   as   i,table_name.*  

新增一個到dataframe

Nathan and I have been working on the Titanic Kaggle problem using the pandas data analysis library and one thing we wanted to do was add a column to a D

linux給 alias 新增命令引數

定義 alias 時,有用命令列引數的需求。但通過查證文件的結果是,alias 根本就不支援傳遞命令列引數。不過,我們可以變通的解決這個問題,即定義函式。 程式碼如下複製程式碼alias test='test() { echo $1; };test'[[email 

QTableWidget新增checkbox,並相應觸發函式

在初始化函式中,新增如下程式碼: for(inti=0;i<ui->setting_tableWidget->rowCount();i++) { for(intj=1;j<u

winform的datagridview有新增按鈕,響應按鈕的點選事件

有兩個事件可以響應: 觸發事件是DataGridView的CellContentClick或CellClick事件 但是可惜的是兩個都不是專門響應按鈕列事件的, CellClick是單擊單元格任意部分發生 CellContentClick是單擊單元格內容時發生

DataGrid新增CheckBox

在DataGrid中要實現確認功能最初的設想是:在每行前面加一個CheckBox,以實現當點選CheckBox時,立即觸發事件(如:on click="Chk_Click()"),獲取當前行的id和CheckBox的checked屬性值,最後更新資料庫。在解決問題之前,我搜過