我的问题是我希望能够将某些节点设置为不可见。我有两种形式。第二个是填充的巫婆复选框,名称与第一种形式的节点相同。选中其中一个复选框后,我想让第一个窗体中的节点不可见。在表单之间传递数据是有效的,因为我使用MessageBox进行了测试。
第二种形式的代码(使节点不可见的责任):
private void button1_Click(object sender, EventArgs e)
{
if (checkBox1.Checked == true)
{
Form1.a = true;
}
this.Close();
}
包含节点的第一个表单中的代码:
public static bool a;
public static bool b;
private void Categories()
{
if(a == true)
{
treeView1.Nodes[0].IsVisible = false;
}
}
我得到的错误:
Property or indexer 'System.Windows.Forms.TreeNode.IsVisible' cannot be assigned to -- it is read only
答案 0 :(得分:4)
而不是使树节点不可见。我想你应该在你不想显示它时将它从集合中删除,如果你想要显示它,你必须再次添加它。
您可以使用删除功能删除节点
tree.Nodes.Remove(myNode);
您可以尝试这样的事情
private void Categories()
{
if(a == true)
{
treeView1.Nodes[0].Remove();
}
}