winform中的datagridview有添加按钮列,响应按钮的点击事件

有两个事件可以响应:

触发事件是DataGridView的CellContentClick或CellClick事件

但是可惜的是两个都不是专门响应按钮列事件的,

CellClick是单击单元格任意部分发生

CellContentClick是单击单元格内容时发生

也就是说这两个事件即使没有按钮的单元格,都会触发它们,

那么怎么实现让它只响应按钮事件呢?

很显然,答案是判断用户单击的是不是按钮所在的列

使用e.ColumnIndex得到事件发生的列就可以了

例如,我的按钮列的索引是6,那么代码如下:

        private void dgvTellist_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            int CIndex = e.ColumnIndex;
            if (CIndex == 6)
            {
                ...处理代码
            }
        }

参考:http://topic.csdn.net/u/20080102/17/9c2a46ad-67d9-449c-a2b4-6f560ba5b9b3.html


WinFormsDataGridView控件提供了操作(通常为最后一),其包含用于编辑、删除和选择的按钮。如果你想要隐藏这些按钮,可以通过设置DataGridView的某些属性来实现。 1. 隐藏“编辑”按钮: 可以通过设置`ReadOnly`属性为`true`来隐藏编辑按钮。这会使得DataGridView的所有单元格都变为只读,从而不显示编辑按钮。 ```csharp dataGridView.ReadOnly = true; ``` 2. 隐藏“删除”按钮DataGridView通常不会显示一个专门的删除按钮,而是使用删除行的功能,这通常是通过编程来实现的。如果你不希望用户通过界面删除行,可以通过事件处理来禁止删除操作。 3. 隐藏“选择”或“详细信息”按钮: 如果你想隐藏选择按钮(有时称为详细信息按钮,用于展开或折叠行),可以使用`DetailsGlyph`属性。 ```csharp dataGridView.DetailsGlyph = false; ``` 如果你想隐藏所有的按钮,包括“添加新行”的按钮,你可以通过编程方式设置`ColumnHeadersVisible`属性为`false`,然后手动添加按钮或其他控件来提供添加、编辑和删除的功能。 ```csharp dataGridView.ColumnHeadersVisible = false; // 添加按钮或其他控件来代替默认的DataGridView操作按钮 // 例如,添加一个添加按钮 Button addButton = new Button(); addButton.Text = "添加"; addButton.Click += (s, e) => { // 添加行的代码逻辑 }; // 添加到表单的相应位置 ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值