C# dgv右击数据跳出菜单“测试过程”点击测试过程跳转新窗体progressform
时间: 2023-09-30 11:11:30 浏览: 76
好的,针对你的问题,我可以提供以下C#代码片段作为参考:
在DataGridView的MouseDown事件中检查是否是右击:
```csharp
private void dgv_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
// 点击位置转换为单元格位置
DataGridView.HitTestInfo hitTest = dgv.HitTest(e.X, e.Y);
if (hitTest.Type == DataGridViewHitTestType.Cell)
{
// 显示右键菜单
ContextMenuStrip cms = new ContextMenuStrip();
ToolStripMenuItem tsmi = new ToolStripMenuItem();
tsmi.Text = "测试过程";
tsmi.Click += new EventHandler(tsmi_Click);
cms.Items.Add(tsmi);
dgv.ContextMenuStrip = cms;
}
}
}
```
在右键菜单项的Click事件中打开新窗体:
```csharp
private void tsmi_Click(object sender, EventArgs e)
{
ProgressForm progressForm = new ProgressForm();
progressForm.ShowDialog();
}
```
其中`ProgressForm`是你需要新建的窗体类名,`ShowDialog()`方法可以显示一个模态窗口,阻止用户与其他窗口进行交互,直到该窗口关闭为止。
阅读全文