当前位置:和仁网 >生活 > 正文

如何在C#的TreeView控件中双击节点而不改变节点的展开/折叠状态

2021-10-21 0

首先声明一个全局变量:
public int m_MouseClicks = 0;
//记录鼠标在myTreeView控件上按下的次数

再分别定义三个事件:
//获取鼠标在myTreeView控件按下的次数,并赋给全局变量m_MouseClicks
private void MouseDown(object sender, MouseEventArgs e)
{
this.m_MouseClicks = e.Clicks;
}
//myTreeView控件节点折叠之前判断鼠标按下的次数,并进行控制
private void BeforeCollapse(object sender, TreeViewCancelEventArgs e)
{
if (this.m_MouseClicks > 1)
{ //如果是鼠标双击则禁止结点折叠
e.Cancel = true;
}
else
{ //如果是鼠标单击则允许结点折叠
e.Cancel = false;
}
}
//myTreeView控件节点展开之前判断鼠标按下的次数,并进行控制
private void BeforeExpand(object sender, TreeViewCancelEventArgs e)
{
if (this.m_MouseClicks > 1)
{ //如果是鼠标双击则禁止结点展开
e.Cancel = true;
}
else
{ //如果是鼠标单击则允许结点展开
e.Cancel = false;
}
} 有点绕弯,也是没有办法中的办法。貌似有个属性的
本周热门
本月热门