datagridview与contextmenustrip完美结合应用

简介: 上图是最佳datagridview与contextmenustrip合用效果,方法是: 而当两个以上的datagridview共同使用一个ContextMenuStrip时,【打开】【关闭】处理事件识别SourceControl的方...

image

上图是最佳datagridview与contextmenustrip合用效果,方法是:

image

而当两个以上的datagridview共同使用一个ContextMenuStrip时,【打开】【关闭】处理事件识别SourceControl的方法:


  1. private void 打开ToolStripMenuItem_Click(object sender, EventArgs e)
  2. {
  3.   ContextMenuStrip cmStrip = (ContextMenuStrip)((ToolStripMenuItem)sender).Owner;
  4.   string ctrlSrcName = cmStrip.SourceControl.Name;
  5.   if (ctrlSrcName.Equals("dataGridView3"))
  6.   {}
  7.   else if (ctrlSrcName.Equals("dataGridView4"))
  8.   {}
  9. }


附动态右键生成contextMenuStrip的方法:


  1. private void dataGridView4_CellMouseDown(object sender, DataGridViewCellMouseEventArgs e)
  2. {
  3.     if (e.Button == System.Windows.Forms.MouseButtons.Right)
  4.     {
  5.         if (e.RowIndex >= 0)
  6.         {
  7.             dataGridView4.ClearSelection();
  8.             dataGridView4.Rows[e.RowIndex].Selected = true;
  9.             dataGridView4.CurrentCell = dataGridView4.Rows[e.RowIndex].Cells[e.ColumnIndex];
  10.             this.contextMenuStrip1.Tag = "dataGridView4";
  11.             this.contextMenuStrip1.Show(MousePosition.X, MousePosition.Y);
  12.         }
  13.     }
  14. }


相关文章
|
6月前
|
存储 缓存 C#
46.c#:datagridview控件
46.c#:datagridview控件
84 1
|
缓存 算法 索引
WinForm——DataGridView总结
WinForm——DataGridView总结
515 0
WinForm——DataGridView总结
datagridview设置某一列可写
    实践证明,在winform的窗体设计时,将datagridview.readonly=false;     或者在datagridview Edit Columns时设置某一列readonly=false都是没起多大作用的。
827 0
DataGridView - DataGridViewCheckBoxCell的使用
Datagridview是.net中最复杂的控件,由于人们对表格的格式要求多种多样,所以编写一个通用的Datagridview(类似JSF中的datatable)非常困难的。 Datagridview中,用户可以对行、列、单元格进行编程。
708 0