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

来源:百度知道 编辑:UC知道 时间:2024/05/21 23:57:51
各位如题
谢谢各位
b/s结构的

首先声明一个全局变量:
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;
}
} 有点绕弯,也是没有办法中的办法。

貌似有个属性的