WINFROM有两个控件,一个Treeview1,一个Button1,Treeview1已经设置checkbox为true,有两个问题:
1、如何控制Treeview1中checkbox选中项不超过6个?
2、如何通过点击button1获得当前treeview所有checkbox选中的节点值?
1、如何控制Treeview1中checkbox选中项不超过6个?
2、如何通过点击button1获得当前treeview所有checkbox选中的节点值?
nodes 里有你要的所有选中节点,按先进先出原则控制节点的Checked状态. List<TreeNode> nodes = new List<TreeNode>();
const int nodeLimit = 6;
TreeView tv = new TreeView();
tv.AfterCheck += (s, e) =>
{
if (e.Node.Checked)
{
if (nodes.Count == nodeLimit)
{
TreeNode node = nodes[0];
node.Checked = false;
}
nodes.Add(e.Node);
}
else
{
if (nodes.Contains(e.Node))
{
nodes.Remove(e.Node);
}
}
};