一、背景
如下图所示,我想实现通过鼠标点击treeview
的根节点,然后在文本框控件中显示鼠标点击的节点号。
二、程序实现
因为是要通过鼠标点击才发生的事情,所以这属于一个事件,需要触发才行,刚开始不知道这个事件,一直在网上复制别人的代码,发现点击鼠标一直触发不了。需要在treeview
控件的属性窗口上有个闪电的标志,代表的是事件,去设置这个触发的事件。如下图所示:
然后在NodeMouseClick
里边设置触发的函数private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
,表示的是节点的触发。也就是鼠标点击节点后就会触发这个事件进行处理。程序如下:
using System.Windows.Forms;
private event TreeNodeMouseClickEventHandler NodeMouseClick;
private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) //鼠标点击节点触发的事件
{
if (e.Button == System.Windows.Forms.MouseButtons.Left) //单击鼠标左键才响应
{
if (e.Node.Level == 1) //判断子节点才响应
{
textBox1.Text = e.Node.Text; //文件框中显示鼠标点击的节点名称
}
}
}
程序中鼠标点击节点是会判断鼠标的左键才会响应,然后再判断是不是子节点,如果是子节点才会显示我想要的子节点名称内容。
三、参考资料
https://msdn.microsoft.com/zh-cn/library/system.windows.forms.treeview.nodemouseclick(v=vs.110).aspx
by 羊羊得亿
2017-07-14 ShenZhen