现在的位置: 首页 > 综合 > 正文

DataGridView右键菜单动态更改

2017年11月07日 ⁄ 综合 ⁄ 共 616字 ⁄ 字号 评论关闭

最近在做数据统计的时候需要根据某一列进行统计,但是专门放出来实在太难受,最后决定放在右键菜单里面。

根据鼠标所在的列进行这列的统计,比如说学生信息,鼠标在性别上点,那么右键菜单里最后一项就是根据性别统计,在年龄上点就是根据年龄统计。

起初给DataGridView绑定了ContextMenuStrip,在Opening事件中写,但是都很难实现,最终还是直接在DataGridView的鼠标点击事件CellMouseClick中判断完成。

 

 

 

 

 

 

        private void customersDataGridView_CellMouseClick(object sender, DataGridViewCellMouseEventArgs e)
        {
            if (e.Button == System.Windows.Forms.MouseButtons.Right)
            {
                if (e.RowIndex >= 0 && e.ColumnIndex >= 0)
                {
                    this.customersDataGridView[e.ColumnIndex, e.RowIndex].Selected = true;
                    contextMenuStrip1.Items[7].Text = this.customersDataGridView.Columns[e.ColumnIndex].HeaderText;
                    contextMenuStrip1.Show(Control.MousePosition);
                }
            }
        }

抱歉!评论已关闭.