本文介绍了检查所有子节点是否检查父节点,反之亦然的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我第一次在应用程序中使用树视图,我通过以下代码将其与数据库绑定:
Hi,
I am using tree view first time in my application, I have bind it with database through following code :
protected void PopulateTreeView(TreeNodeCollection parentNode, int parentID, DataTable folders)
{
foreach (DataRow folder in folders.Rows)
{
if (Convert.ToInt32(folder["parentID"]) == parentID)
{
String key = folder["ID"].ToString();
String text = folder["title"].ToString();
TreeNodeCollection newParentNode = parentNode.Add(key, text).Nodes;
PopulateTreeView(newParentNode, Convert.ToInt32(folder["ID"]), folders);
}
}
}
并在按钮单击上编写以下代码:
and write the following code on button click :
private void button1_Click(object sender, EventArgs e)
{
SqlDataAdapter adp = new SqlDataAdapter("viewMyTable", con);
adp.SelectCommand.CommandType = CommandType.StoredProcedure;
DataTable dt = new DataTable();
adp.Fill(dt);
PopulateTreeView(treeView1.Nodes, 0, dt);
}
现在,我想检查所有子节点,是否选中了子节点的父节点,反之亦然.
如果有人知道答案,请帮助我.
Parveen Rathi
Now I want to check all the child node if the parent node of the children is checked and vice-versa.
Please help me, if somebody knows the answer.
Parveen Rathi
推荐答案
// Prevent expansion of a node that does not have any checked child nodes.
private void TreeNode_Clicked(object sender, TreeViewCancelEventArgs e)
{
bool checkChildren = (e.Node.Checked);
if (node.Nodes.Count == 0)
{
return;
}
foreach (TreeNode childNode in e.Node.Nodes)
{
childNode.Checked = !childNode.Checked;
}
}
这篇关于检查所有子节点是否检查父节点,反之亦然的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!