DevExpress GridControl控件行内新增、编辑、删除添加选择框

以下为内容以图片居多1234表示点击顺序

先新增一行 操作和新增数据行一样

a

打开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.repositoryItemButtonEdit_update_ButtonClick);
复制代码

 

DevExpress控件的属性太多了 还需要大家进行一步的学习使用理解

如有错误 或更好的方法 欢迎大家指指出

 

出处:https://blog.csdn.net/yueliangge910101/article/details/82257676

=================================================================

 1.首先到GridControl控件设计里设置属性Repository    (In-place EditorRepository)  如下图(CheckEdit可以不添加,这是本人根据自己需求添加的):

         主要设置两个两个属性 NullText,Name

     2.绑定数据

        关键代码如下:

            DataTable dt = dbHelp.GetDataSql("select TS_NO,TS_NAME ,TS_LONGITUDE,TS_LATITUDE,TS_RANK from  dbo.LPTE_TS");

            grStation.DataSource = null;
            gvStation.Columns.Clear();
            grStation.DataSource = dt;

            gvStation.Columns["TS_NO"].Visible = false;
            gvStation.Columns["TS_NAME"].Visible = true;
            gvStation.Columns["TS_NAME"].Caption = "名称";
            gvStation.Columns["TS_NAME"].VisibleIndex = 1;
            gvStation.Columns["TS_RANK"].Visible = true;
            gvStation.Columns["TS_RANK"].Caption = "等级";
            gvStation.Columns["TS_RANK"].VisibleIndex = 2;
            gvStation.Columns["TS_LONGITUDE"].Caption = "经度";
            gvStation.Columns["TS_LATITUDE"].Caption = "纬度";

 

            GridColumn addLinkHiper = new GridColumn();
            addLinkHiper.Caption = "新增";
            addLinkHiper.Visible = true;

            addLinkHiper.ColumnEdit = stationAdd;
            gvStation.Columns.Add(addLinkHiper);
            addLinkHiper.VisibleIndex = 5;

            GridColumn editLinkHiper = new GridColumn();
            editLinkHiper.Caption = "编辑";
            editLinkHiper.Visible = true;

            editLinkHiper.ColumnEdit = stationEdit;
            gvStation.Columns.Add(editLinkHiper);
            editLinkHiper.VisibleIndex = 6;

            GridColumn delLinkHiper = new GridColumn();
            delLinkHiper.Caption = "删除";
            delLinkHiper.Visible = true;

            delLinkHiper.ColumnEdit = stationDel;
            gvStation.Columns.Add(delLinkHiper);
            delLinkHiper.VisibleIndex = 7;

            gvStation.BestFitColumns();

            以上数据已全部绑定完成

    3.触发事件

            在上图中点击事件Click,新增不多说,弹出新窗体即可 

          //编辑
        private void stationEdit_Click(object sender, EventArgs e)
        {
            int[] selectRows = gvStation.GetSelectedRows();
            //赋值
            int tsNo = Convert.ToInt32(gvStation.GetRowCellValue(selectRows[0], "TS_NO"));  //TS_NO是控件列名

            //具体操作因人而异

           ......
        }   

         //删除
        private void stationDel_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("确定删除所选数据?", "删除提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
            {

                int[] selectRows = gvStation.GetSelectedRows();
                //赋值
                int  tsNO = Convert.ToInt32(gvStation.GetRowCellValue(selectRows[0], "TS_NO"));

               //写sql语句执行删除操作就可以了。
            }

        }

最后贴一张效果图:

 

 

出处:https://blog.csdn.net/m1654399928/article/details/21951519

posted on   jack_Meng  阅读(3368)  评论(0编辑  收藏  举报

编辑推荐:
· 没有源码,如何修改代码逻辑?
· 一个奇形怪状的面试题:Bean中的CHM要不要加volatile?
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
阅读排行:
· DeepSeek “源神”启动!「GitHub 热点速览」
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)
· DeepSeek R1 简明指南:架构、训练、本地部署及硬件要求
· NetPad:一个.NET开源、跨平台的C#编辑器
历史上的今天:
2017-03-24 一个加密算法 -- 每次生成不重复的密文

导航

< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8
点击右上角即可分享
微信分享提示

喜欢请打赏

扫描二维码打赏

支付宝打赏

主题色彩