c#中在datagridview的表格动态增加一个按钮方法,如果想要这一套教程的可以移步去这里
《期末作业C#实现学生宿舍管理系统》,对了最近我们有一个人工智能交流群,如果大家对代码有问题,想交流的可以进群,私聊我就可以了!
效果图片 :
在这里插入图片描述

第一步:

在Load事件中写入代码

 			//在datagridview中添加button按钮
            DataGridViewButtonColumn btn = new DataGridViewButtonColumn();
            btn.Name = "Modify";
            btn.HeaderText = "操作";
            btn.DefaultCellStyle.NullValue = "修改";
            dataGridView1.Columns.Add(btn);

            //在datagridview中添加button按钮
            DataGridViewButtonColumn btn2 = new DataGridViewButtonColumn();
            btn2.Name = "del";
            btn2.HeaderText = " ";
            btn2.DefaultCellStyle.NullValue = "删除";
            dataGridView1.Columns.Add(btn2);  

第二步:

那ui有了功能怎么办呢?

别急

我们在 dataGridView1_CellContentClick事件中添加方法

  //点击第一行button按钮事件
            int index = dataGridView1.SelectedCells[0].RowIndex;
            //获取所在行
            var aa = dataGridView1.Rows[index].Cells[0].Value;
            MessageBox.Show(aa.ToString());
            //new Form5(aa.ToString()).Show(); 

这样的话 我们就可以点击对应行的修改来获取到id的值

在这里插入图片描述

在这里插入图片描述

第三步:

相信大家也发现了,我们的按钮都能触发,那这样肯定不能区分删除和修改,于是我们给控件命名的作用就来了
我们在 dataGridView1_CellContentClick事件中修改下刚刚的代码:

if (this.dataGridView1.Columns[e.ColumnIndex].Name == "Modify")
            {
                //点击第一行button按钮事件
                int index = dataGridView1.SelectedCells[0].RowIndex;
                //获取所在行
                var aa = dataGridView1.Rows[index].Cells[0].Value;
                MessageBox.Show(aa.ToString());
               // new Form5(aa.ToString()).Show();

            }
             else if(this.dataGridView1.Columns[e.ColumnIndex].Name == "del"){

                MessageBox.Show("del");
            
            
            
            
            }

好了今天内容就到这里!!

这里有一个bug就是第三行没数据需要隐藏,现在还没有解决,欢迎大家指出!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐