• C# WinForm中DataGridView的修改删除功能


    这里是自己做的修改和删除,点击修改时弹出修改窗体,点击删除时弹出"确认删除"的对话框.这里主要是说明,如何在DataGridView中获取到单击的相应按钮.WinForm中的DataGridView不像web下的GridView控件,可以直接给加入的修改,删除LinkButton添加事件,从而对行处理.

    在WinForm中,必须要获取到单击的是哪类按钮,才能对相应的按钮作相应的处理.

    首先,在DataGridView(dgvTest)中加入两个DataGridViewLinkColumn类型的列,其Name分别设置为update和delete,Text分别为修改,删除.把两列的UseColumnTextForLinkValue设为true,意为设置列的文本.

    然后在DataGridView的Cell_Click中添加获取单击相应控件的代码,并进行相应的事件处理,代码参考如下:

    private void dgvUsers_CellClick(object sender, DataGridViewCellEventArgs e)
            {
                string action = dgvUsers.Columns[e.ColumnIndex].Name;//操作类型

                switch (action)
                {
                    case "update":
                        //获取相应列的数据ID,弹出加载了该ID数据详细信息的Form,用以修改

                        break;
                    case "Delete":
                        if (MessageBox.Show("确定删除吗?", "删除提示", MessageBoxButtons.OKCancel) == DialogResult.OK)
                        {
                            //获取相应列的数据ID,删除此数据记录     

                        }
                        break;
                    default:
                        break;
                }
            }

    主要是通过加入列的Name来识别所点击的项.获取所单击行的各个Cell信息和值,参数e中有RowIndex和ColumnIndex.再通过DataGridView的Rows,Columns,Cells即可得到值.详细的不多写......


    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/renyouprince/archive/2009/04/29/4136738.aspx

  • 相关阅读:
    mpvue 引入 vant-weapp 踩坑记录
    mac上hbuilder无法启动微信小程序调试窗口的解决办法
    mac 安装了xcode,flutter doctor 却检测不到展示叉叉
    vue 前端复制粘贴方式上传图片
    401 错误时,几个细节检查
    vue 图片src动态加载
    前端优化的大方向
    how to stop code runner in vscode(macOs)
    window server 2008 r2 TLS 升级1.2
    超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小
  • 原文地址:https://www.cnblogs.com/qfb620/p/1510390.html
Copyright © 2020-2023  润新知