【发布时间】:2017-04-02 10:47:32
【问题描述】:
我正在以编程方式创建一个上下文菜单,以便在我的数据网格上有右键单击选项。这是我的代码:
public partial class Form1 : Form
{
//string fileExcel;
public Form1()
{
InitializeComponent();
fillCari();
FillCombo();
ContextMenuStrip mnu = new ContextMenuStrip();
ToolStripMenuItem mnuCopy = new ToolStripMenuItem("Copy");
ToolStripMenuItem mnuCut = new ToolStripMenuItem("Cut");
ToolStripMenuItem mnuPaste = new ToolStripMenuItem("Paste");
//Assign event handlers
mnuCopy.Click += new EventHandler(mnuCopy_Click);
mnuCut.Click += new EventHandler(mnuCut_Click);
mnuPaste.Click += new EventHandler(mnuPaste_Click);
//Add to main context menu
mnu.Items.AddRange(new ToolStripItem[] { mnuCopy, mnuCut, mnuPaste });
//Assign to datagridview
dataGridView1.ContextMenuStrip = mnu;
}
这个特定的块我不断收到它在当前上下文中不存在的错误。知道为什么吗?
mnuCopy.Click += new EventHandler(mnuCopy_Click);
mnuCut.Click += new EventHandler(mnuCut_Click);
mnuPaste.Click += new EventHandler(mnuPaste_Click);
更新的问题:我从上下文菜单中创建了条带,但不知道如何实现复制命令。
public partial class Form1 : Form
{
//string fileExcel;
public Form1()
{
InitializeComponent();
fillCari();
FillCombo();
ContextMenuStrip mnu = new ContextMenuStrip();
dataGridView3.ContextMenuStrip = mnu;
}
private void copyToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void cutToolStripMenuItem_Click(object sender, EventArgs e)
{
}
private void pasteToolStripMenuItem_Click(object sender, EventArgs e)
{
}
【问题讨论】:
-
发布 exact 错误。 “它在当前上下文中不存在。”一点用都没有
-
那些需要声明为成员,而不是局部变量。s
-
附言。为什么要修改构造函数?在构造函数成功退出之前,表单甚至不存在。这就是您添加
InitializeComponent的原因吗,因为您不断收到错误消息? -
@PanagiotisKanavos
The name 'mnuCopy_Click' does not exist in the current context -
你应该有这样的事件处理方法
private void mnuCopy_Click(object sender, EventArgs e){ /* Do something */ }