Winform TreeView 单选

 private void treeView1_AfterCheck(object sender, TreeViewEventArgs e)
        {
            //通过鼠标或者键盘触发事件,防止修改节点的Checked状态时候再次进入
            if (e.Action == TreeViewAction.ByMouse || e.Action == TreeViewAction.ByKeyboard)
            {
                if (e.Node.Checked)
                {
                    foreach (TreeNode node in treeView1.Nodes)
                    {
                        if (node.Name != e.Node.Name)
                        {
                            node.Checked = false;
                        }
                    }
                }
            }
        }
时间: 2024-10-20 12:35:41

Winform TreeView 单选的相关文章

winform treeview 通过节点名称添加子节点

/// <summary> /// 添加人员节点(利用TreeNodeCollection) /// </summary> /// <param name="tnc">TreeNodeCollection(TreeView的节点集合)</param> /// <param name="pid_val">父id的值</param> /// <param name="id"

Winform TreeView 查找下一个节点

转载:http://www.cnblogs.com/Ruiky/archive/2013/02/01/2888674.html public static class TreeViewHelper { private static IEnumerable<TreeNode> childNodes(this TreeNode node) { return node.Nodes.Cast<TreeNode>() .SelectMany(x => x.selfAndChildNod

winform treeview绑定数据 DOM操作

form1 public void treeView() { // datatable 定义变量接收 传归来的值 DataTable Father = new BuMenDA().ConSql(); //查询出来的的结果不可能为空 for循环一条条查出来 for (int a = 0; a <= Father.Rows.Count; a++) {// 定义新的节点接a行的 Name列 TreeNode fatherNode = new TreeNode(Father.Rows[a]["Na

Winform Treeview 的按需加载

最近项目里用到treeview,原先设计的是一开始就把所有数据都加载到treeview里,后来发现客户的数据量实在太大,加载所有数据要2分钟,这个是客户没法接受的.后来就考虑到用户也不是一开始就要看所有的数据,用户也是一层一层地展开,所以我们就考虑是不是可以实现以当用户展开某个结点时才加载当前结点下面的数据.一番查找后,发现treeview有BeforeExpand事件可以实现我们的需求. 下面介绍具体的实现代码: 1. 首先只加载各部门(结点)的信息   1: List<string> m_

winform TreeView的一些用法以及异步加载

今天,主要弄了一下对于树型控件的一些方法,以及异步加载.参考: http://www.cnblogs.com/greatverve/archive/2012/03/23/winform-treeview.html 下面是TreeView的一些用法 private void BindTreeView() { treeView1.LabelEdit = false;//不可编辑 //添加结点 TreeNode root = new TreeNode(); root.Text = "根节点"

C# winform TreeView中关于checkbox选择的完美类(转载)

public static class TreeViewCheck { /// <summary> /// 系列节点 Checked 属性控制 /// </summary> /// <param name="e"></param> public static void CheckControl(TreeViewEventArgs e) { if (e.Action != TreeViewAction.Unknown) { if (e.No

Winform - TreeView控件,只展开根目录

TreeNode类型是有Expand和ExpandAll这两个方法.而Treeview是只有ExpandAll的,想要展开根目录下面的节点的话 //只展开根目录 if (this.treeView1.Nodes.Count > 0) this.treeView1.Nodes[0].Expand();

C# winform treeview node添加右键菜单并选中节点

转自http://www.cnblogs.com/luluping/archive/2010/03/03/1677206.html (1)要向窗体添加一个TreeView控件 (2)再添加一个ContextMenuStrip控件: (3)就要给TreeView添加一个MouseDown事件,代码如下: private void treeView1_MouseDown(object sender, MouseEventArgs e)         ...{             if (e.B

[WinForm]TreeView 检查节点文本是否存在

关键代码: #region 检查节点文本是否存在 /// <summary> /// 检查节点文本是否存在 /// </summary> /// <param name="tree">TreeView</param> /// <param name="key">节点文本</param> /// <returns>是否存在</returns> public static b