日期:2014-05-19  浏览次数:20781 次

请教关于C#2.0的TreeView控件的CheckBoxes属性问题
请问:有什么方法能让父级选中时,所有该父级的子级全部被选中,只要选中一个子级时,该子级的所有父级全部被选中,就像杀毒软件选择杀毒目标那样

------解决方案--------------------
用递归写
------解决方案--------------------
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
treeView1.CheckBoxes = true;
}

private void Form1_Load(object sender, EventArgs e)
{
TreeNode root = treeView1.Nodes.Add( "父 ");
root.Nodes.Add( "子 ");
root.Nodes.Add( "子 ");
root.Nodes.Add( "子 ");

treeView1.NodeMouseClick += new TreeNodeMouseClickEventHandler(treeView1_NodeMouseClick);
}

void treeView1_NodeMouseClick(object sender, TreeNodeMouseClickEventArgs e)
{
foreach (TreeNode node in e.Node.Nodes)
{
node.Checked = e.Node.Checked;
}
}
}