Dev中GridControl中点击事件

测试数据绑定gridcontrol:

DataTable dt = new DataTable();//创建表
dt.Columns.Add("ID", typeof(Int32));//添加列
dt.Columns.Add("Name", typeof(String));
dt.Columns.Add("Age", typeof(Int32));
dt.Rows.Add(new object[] { 1, "张三", 20 });//添加行
dt.Rows.Add(new object[] { 1, "张六", 20 });//添加行
dt.Rows.Add(new object[] { 2, "李四", 25 });
dt.Rows.Add(new object[] { 3, "王五", 30 });
gridControl1.DataSource = dt;

获取焦点行:

通过句柄获取System.Data.DataRowView bView = gridView1.GetRow(int  rowHandle) as System.Data.DataRowView;

 int a = gridView1.FocusedRowHandle;
 System.Data.DataRowView bView = gridView1.GetRow(a) as System.Data.DataRowView;

gridcontrol双击事件:

 private void gridControl1_DoubleClick(object sender, EventArgs e)
 {         
   System.Data.DataRowView pView = gridView1.GetFocusedRow() as System.Data.DataRowView; //聚焦行
   if (pView != null)
   {
     object id = pView.Row["ID"];
   }
 }

gridView 行点击事件:

private void gridView1_RowClick(object sender, DevExpress.XtraGrid.Views.Grid.RowClickEventArgs e)
        {
            System.Data.DataRowView pDataRowView = this.gridView1.GetRow(e.RowHandle) as System.Data.DataRowView;
            string strFieldName = string.Empty;
            foreach (DataColumn mColumn in pDataRowView.Row.Table.Columns)    //遍历是否存在指定字段
            {
                if (mColumn.ColumnName.ToUpper().Contains("FID"))
                {
                    strFieldName = mColumn.ColumnName;
                    break;
                }
                else if (mColumn.ColumnName.ToUpper().Contains("ID"))
                {
                    strFieldName = mColumn.ColumnName;
                    break;
                }
            }
            if (strFieldName != string.Empty)    //若存在
            {
                object a=pDataRowView[strFieldName];  //得到值
            }
        }


你可能感兴趣的:(DEV)