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

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐