c# datagridview 怎么点击表体出现右键菜单有一个删除按钮,可以直接删除该行!

已举报 回答 关注
c# datagridview 怎么点击表体出现右键菜单有一个删除按钮,可以直接删除该行!
问在线客服
扫码问在线客服
  • 回答数

    3

  • 浏览数

    428

3个回答 默认排序
  • 默认排序
  • 按时间排序

已采纳
在Form上拖放ContextMenuStrip并添加一个“删除”菜单项,并添加此菜单项的Click事件处理代码,如下所示,设置DataGridView的ContextMenuStrip属性为新加入的ContextMenuStrip。
private void toolStripMenuItem_Click(object sender, EventArgs e) { DataGridView dv = sender as DataGridView; if (dv != null && dv.CurrentCell!=null && dv.CurrentCell.RowIndex!=-1) { dv.Rows.RemoveAt(dv.CurrentCell.RowIndex); } }如有数据库的操作,可相应的做数据库的删除操作。
取消 评论
建立一个右键菜单ContextMenuStrip,并在里面添加一个删除按钮deleterow然后绑定
this.dataGridView1.ContextMenuStrip = this.contextMenuStrip1;//把菜单绑定到表格
删除按钮点击事件
private void deleterow_Click(object sender, EventArgs e)
{
this.dataGridView1.Rows.Remove(dataGridView1.SelectedRows[0]);
}
这是删除选中行的第一行,也可以用RemoveAt(行号)来删除
取消 评论
在MouseDown 事件里面写:
private void KnowledgedataGridView_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right) //判断是不是右键
{
Control control = new Control();

Point ClickPoint = new Point(e.X, e.Y);
control.GetChildAtPoint(ClickPoint);

if (KnowledgedataGridView.HitTest(e.X, e.Y).RowIndex >= 0 && KnowledgedataGridView.HitTest(e.X, e.Y).ColumnIndex >= 0)//判断你点的是不是一个信息行里
{
KnowledgedataGridView.CurrentCell = KnowledgedataGridView.Rows[KnowledgedataGridView.HitTest(e.X, e.Y).RowIndex].Cells[KnowledgedataGridView.HitTest(e.X, e.Y).ColumnIndex];
ContextMenu con = new ContextMenu();
MenuItem menuAddknowledge = new MenuItem("添加知识点");
MenuItem menuLine1 = new MenuItem("-");
MenuItem menuUpdateknowledge = new MenuItem("修改修改知识点");
MenuItem menuLine2 = new MenuItem("-");
MenuItem menuDeleteknowledge = new MenuItem("删除知识点");

menuAddknowledge.Click += new EventHandler(tSButAdd_Click);
menuUpdateknowledge.Click += new EventHandler(tSButUpdate_Click);
menuDeleteknowledge.Click += new EventHandler(tSButDel_Click);

con.MenuItems.Add(menuAddknowledge);
con.MenuItems.Add(menuLine1);
con.MenuItems.Add(menuUpdateknowledge);
con.MenuItems.Add(menuLine2);
con.MenuItems.Add(menuDeleteknowledge);

this.KnowledgedataGridView.ContextMenu = con;
con.Show(KnowledgedataGridView, new Point(e.X + 10, e.Y));
}
}
}
取消 评论
ZOL问答 > 相机 > 理光相机 > 其他 > c# datagridview 怎么点击表体出现右键菜单有一个删除按钮,可以直接删除该行!

举报

感谢您为社区的和谐贡献力量请选择举报类型

举报成功

经过核实后将会做出处理
感谢您为社区和谐做出贡献

提示

确定要取消此次报名,退出该活动?