C#.NET中contextmenusStrip控件的一个问题

来源:百度知道 编辑:UC知道 时间:2024/05/19 05:19:11
我使用的是vs2008,在新的页面中建立了一个listBox,然后在其中关联了一个contextmenusStrip,然后我又加入了一个textbox,我希望通过右键点击listbox调用出了contextmenustrip中的多个内容后,通过鼠标单击其中一项,将单击那项出现在textbox中,请问我该怎么做,是需要定义mouseclick吗?但是该如何定义呢,事件mouseclick后面的下拉菜单中没有任何内容,如果需要自己手动添加我该如何添加。。。。。。问的比较多,因为我是初学者,所以希望得到大家无私的帮助,谢谢。

我希望通过右键点击listbox调用出了contextmenustrip中的多个内容后,通过鼠标单击其中一项,将单击那项出现在textbox中,

你可以这样做,选择contextmenustrip编辑好内容,鼠标双击contextmenustrip中的某条内容就会产生一个事件
然后在这个事件下添加
{
textBox=contextmenustrip的被点击的文本;
}
这样就可以了,不过你每一个目录都要添加一个事件,每个事件下都要写同样的方法

listBox好像不支持右键选取,而且右键也不能出发MouseClick事件吧,用MouseDown吧,手动显示菜单,不用关联
private void listBox1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
listBox1.SelectedIndex = e.Location.Y / listBox1.ItemHeight;
contextMenuStrip1.Show(Cursor.Position);
}
}

private void 复制ToolStripMenuItem_Click(object sender, EventArgs e)
{
textBox1.Text = listBox1.SelectedItem.ToString();
}

listbox有个contextmenu属性,设置成contextmenusStrip,然后在contextmenusStrip里添加几项,比如添加了一项A,然后双击A,就会到源代码的页面,里面写 textbox.text= 你要显示的东西