wpftreeview多选(WinFrom中怎么通过点击Button获取TreeView控件的值到另一个TreeView上,带checkBook、可多选)
本文目录
- WinFrom中怎么通过点击Button获取TreeView控件的值到另一个TreeView上,带checkBook、可多选
- C# treeview多选 查询数据库
- 我想知道在Winform中的TreeView控件,如何实现选中/取消选中父节点则自动选择/取消选中对应子节点谢谢给
- C#中treeview在 页面中怎么实现多选并且取值
WinFrom中怎么通过点击Button获取TreeView控件的值到另一个TreeView上,带checkBook、可多选
treeView1有个属性是CheckBoxesusing System;using System.Drawing;using System.Windows.Forms;public class Form1 : Form{ private TreeView treeView1; private Button showCheckedNodesButton; private TreeViewCancelEventHandler checkForCheckedChildren; public Form1() { treeView1 = new TreeView(); showCheckedNodesButton = new Button(); checkForCheckedChildren = new TreeViewCancelEventHandler(CheckForCheckedChildrenHandler); this.SuspendLayout(); // Initialize treeView1. treeView1.Location = new Point(0, 25); treeView1.Size = new Size(292, 248); treeView1.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Bottom | AnchorStyles.Right; treeView1.CheckBoxes = true; // Add nodes to treeView1. TreeNode node; for (int x = 0; x 《 3; ++x) { // Add a root node. node = treeView1.Nodes.Add(String.Format("Node{0}", x*4)); for (int y = 1; y 《 4; ++y) { // Add a node as a child of the previously added node. node = node.Nodes.Add(String.Format("Node{0}", x*4 + y)); } } // Set the checked state of one of the nodes to // demonstrate the showCheckedNodesButton button behavior. treeView1.Nodes.Checked = true; // Initialize showCheckedNodesButton. showCheckedNodesButton.Size = new Size(144, 24); showCheckedNodesButton.Text = "Show Checked Nodes"; showCheckedNodesButton.Click += new EventHandler(showCheckedNodesButton_Click); // Initialize the form. this.ClientSize = new Size(292, 273); this.Controls.AddRange(new Control { showCheckedNodesButton, treeView1 } ); this.ResumeLayout(false); } static void Main() { Application.Run(new Form1()); } private void showCheckedNodesButton_Click(object sender, EventArgs e) { // Disable redrawing of treeView1 to prevent flickering // while changes are made. treeView1.BeginUpdate(); // Collapse all nodes of treeView1. treeView1.CollapseAll(); // Add the checkForCheckedChildren event handler to the BeforeExpand event. treeView1.BeforeExpand += checkForCheckedChildren; // Expand all nodes of treeView1. Nodes without checked children are // prevented from expanding by the checkForCheckedChildren event handler. treeView1.ExpandAll(); // Remove the checkForCheckedChildren event handler from the BeforeExpand // event so manual node expansion will work correctly. treeView1.BeforeExpand -= checkForCheckedChildren; // Enable redrawing of treeView1. treeView1.EndUpdate(); } // Prevent expansion of a node that does not have any checked child nodes. private void CheckForCheckedChildrenHandler(object sender, TreeViewCancelEventArgs e) { if (!HasCheckedChildNodes(e.Node)) e.Cancel = true; } // Returns a value indicating whether the specified // TreeNode has checked child nodes. private bool HasCheckedChildNodes(TreeNode node) { if (node.Nodes.Count == 0) return false; foreach (TreeNode childNode in node.Nodes) { if (childNode.Checked) return true; // Recursively check the children of the current child node. if (HasCheckedChildNodes(childNode)) return true; } return false; }}
C# treeview多选 查询数据库
这个我做过,你选择多选之后,把你选择的ID保存到一个list集合中,然后在查询这些数据的时候,把list存的数据转化一下,例如:里面存的是liat.add(1),liat.add(2); 你把这个循环取出来拼接成查询的条件,例如 id in (1,2)就可以查询出来了
我想知道在Winform中的TreeView控件,如何实现选中/取消选中父节点则自动选择/取消选中对应子节点谢谢给
你可以用两个递归来设置子节点和父节点的状态,如下 private void CheckChild(TreeNode node) { if (node.Nodes.Count != 0) { foreach (TreeNode item in node.Nodes) { item.Checked = node.Checked; CheckChild(item); } } } private void CheckParent(TreeNode node) { if (node.Parent != null) { int count = 0; foreach (TreeNode item in node.Parent.Nodes) { if (item.Checked) { count++; } } node.Parent.Checked = (count == node.Parent.Nodes.Count); CheckParent(node.Parent); } } private void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e) { CheckChild(e.Node); CheckParent(e.Node); }
C#中treeview在 页面中怎么实现多选并且取值
可以一次获取选中的节点 如果不行,每个节点加一个checkbox 判断选中状态 来确定多选,如果选中获取值
更多文章:
暗黑血统好玩吗(谁能告诉我暗黑血统1好玩还是暗黑血统2好玩 求详细! 谢谢了)
2024年5月6日 06:28
磁盘分区工具diskgenius(怎么用DiskGenius激活分区)
2024年5月15日 21:26
go桌面主题官网(我下载按装的Go安全桌面原来是中文的现变成英文了,不知什原因)
2023年11月26日 02:20
cf单机版最新版本下载(穿越火线单机版内置修改器菜单下载方法)
2024年5月8日 03:04
如何评价游戏《七龙珠z:卡卡罗特》?龙珠z:卡卡罗特这个游戏好玩在哪里
2024年4月10日 01:45
搜狗手机助手下架了?《搜狗手机助手》通过WiFi连接手机方法介绍
2024年4月12日 14:30
湖人vs黄蜂詹姆斯(NBA常规赛湖人对阵黄蜂,前17分钟詹姆斯1分未得,他这是怎么了)
2024年5月7日 09:31
奥特曼传奇英雄 钻石真的(下载新版本233乐园在奥特曼传奇英雄中是真的可以获得无限钻石无限金币吗)
2024年5月16日 21:03