怎样才能让树形控件支持右键选择?
在WinForm程序里, 树形控件一般需要先左键选择一个结点, 然后按右键弹出菜单对该结点进行相关的操作, 但是我想站鼠标右键也能直接选择到一个结点, 不知道怎么实现? 请教了.
------解决方案--------------------用mouseDown事件就可以了。
private void PonTree_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)
{
TreeNode TempNode = PonTree.GetNodeAt( e.X , e.Y );
if ( TempNode != null )
{
PonTree.SelectedNode = TempNode;//選中
}
else
{
return ;
}
}
------解决方案--------------------在MouseUp事件里写上 treeView1.selectNode = e.Node;
试试把 刚想的方法
------解决方案--------------------如果不想从TreeView继承一个新的来改写,那就向TreeView控件添加下的事件:
private void treeView1_MouseDown(object sender, MouseEventArgs e)
{
TreeView tvw = sender as TreeView;
TreeNode _node = tvw.GetNodeAt(e.Location);
if (_node != null)
{
tvw.SelectedNode = _node;
}
}
如果从TreeView继承一个新的控件,类似这样就行了:
class myTreeView : TreeView
{
protected override void OnMouseDown(MouseEventArgs e)
{
TreeNode _node = this.GetNodeAt(e.Location);
if (_node != null)
{
this.SelectedNode = _node;
}
}
}