一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第19天,点击查看活动详情。
DevExpress中GridControl中添加编辑按钮行
以下为内容以图片居多1234表示点击顺序
先新增一行 操作和新增数据行一样
打开ColumnEdit 选择new ButtenEdit new上方会出现一个系统命名的button
命名可以更改必须在下发name中更改 是行的name
进入click事件就和普通的按钮一样了 可以编写自己的代码了
一下代码是设计器中的代码 供大家参考
// gridColumn_update
//
this.gridColumn_update.Caption = "修改";
this.gridColumn_update.ColumnEdit = this.repositoryItemButtonEdit_update;
this.gridColumn_update.FieldName = "gridColumn_update";
this.gridColumn_update.Name = "gridColumn_update";
this.gridColumn_update.UnboundType = DevExpress.Data.UnboundColumnType.Decimal;
this.gridColumn_update.Visible = true;
this.gridColumn_update.VisibleIndex = 5;
//
// repositoryItemButtonEdit_update
//
this.repositoryItemButtonEdit_update.AutoHeight = false;
serializableAppearanceObject1.Options.UseTextOptions = true;
serializableAppearanceObject1.TextOptions.HAlignment = DevExpress.Utils.HorzAlignment.Near;
this.repositoryItemButtonEdit_update.Buttons.AddRange(new DevExpress.XtraEditors.Controls.EditorButton[] {
new DevExpress.XtraEditors.Controls.EditorButton(DevExpress.XtraEditors.Controls.ButtonPredefines.Glyph, "修改", -1, true, true, false, DevExpress.XtraEditors.ImageLocation.MiddleCenter, null, new DevExpress.Utils.KeyShortcut(System. Windows.Forms.Keys.None), serializableAppearanceObject1, "", null, null, true)});
this.repositoryItemButtonEdit_update.Name = "repositoryItemButtonEdit_update";
this.repositoryItemButtonEdit_update.TextEditStyle = DevExpress.XtraEditors.Controls.TextEditStyles.HideTextEditor;
this.repositoryItemButtonEdit_update.ButtonClick += new DevExpress.XtraEditors.Controls.ButtonPressedEventHandler(th is.repositoryItemButtonEdit_update_ButtonClick);
DevExpress中GridControl中实现checkbox多行选中
先看一下效果吧!
11 12 13为我选中的行的主键号
实现以上效果进行批量修改 删除的做法
首先添加一个正常的gridcontrol 绑定数据列
然后插入一个空白列
设置如下
更改一下属性
在我们要绑定的容器中添加一个新列
我用的是DataTable 在DataTable中添加一个新列代码如下
//新建一个数据表 probll.GetProductAll自己写的方法
DataTable db = probll.GetProductAll(4, pageIndex, "申请中", 0, out pageCount);
//在表中增加一个列 add(列名,列类型)
db.Columns.Add("check", typeof(bool));
//给每一行的该列赋值
for (int i = 0; i < db.Rows.Count; i++)
{
db.Rows[i]["check"] = "false";
}
注意:新增列的类型为bool类型
设置可以多选
gridView1 .OptionsSelection.MultiSelect = true;
gridView1 .OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.RowSelect;
设置获取选中行的需要值
string value="";
string strSelected="";
for (int i = 0; i < gridView1.RowCount; i++)
{ // 获取选中行的check的值
value = gridView1.GetDataRow(i)["check"].ToString();
if (value == "True")
{
// productid 是我绑定数据表的字段 可以自己根据需求定义 这样就可以实现文中开始处的功能了
strSelected += gridView1.GetRowCellValue(i, "productid");
}
}