winform treeview checked 获取值 winform treeview里面的复选框 获取值treeview 里面分别有3个父级,里面还有几个子级需要怎么获取呢?求答案,,,求代码 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 private void GetTreeViewNode(TreeNode node1) { if (node1.Nodes != null) { foreach (TreeNode node2 in node1.Nodes) { GetTreeViewNode(node2); } } else { if (node1.Checked)//选中的时候就。。 { //do something } } } AfterCheck事件 private void treeView1_AfterCheck(object sender, TreeViewEventArgs e) { SetNodeCheckState((TreeNode)e.Node);} private void SetNodeCheckState(TreeNode parentNode) { foreach (TreeNode node in parentNode.Nodes) { if (parentNode.Checked == true) { //node.Checked = true; Console.WriteLine(node.Name);//输出选中的树节点,包括子节点。 } //else // node.Checked = false;// 此处如果选中父节点,同时选中子节点可去掉注释。 if(node.Nodes.Count>0) SetNodeCheckState(node); } } private void SetNodeCheckState(TreeNode parentNode) { if (parentNode.Nodes.Count > 1) { foreach (TreeNode node in parentNode.Nodes) { if (parentNode.Checked == true) { node.Checked = true; Console.WriteLine(node.Text); } else node.Checked = false; if (node.Nodes.Count > 0) SetNodeCheckState(node); } } else { Console.WriteLine(parentNode.Text); } } 方法修改下,这样就可以显示没有子节点的信息。 void saa(TreeNode tn) { if (tn.Checked && tn.Tag!=null) { int id = Convert.ToInt32(tn.Tag); //MessageBox.Show(id.ToString()); txt.Text += id.ToString() + ","; } if (tn.Nodes.Count>0) { foreach (TreeNode tn1 in tn.Nodes) { saa(tn1); } } }只能获取第一个,第二个后都不能 C#课程设计 [初学]帮我看看这段代码有什么问题 用ajax 为什么会弹出 unknown error对话框 那有C#的ADO编程例子下载? 当前上下文中不存在名称“FileUpload1” 再次高分征求c#jmail程序,要求完整 请教.net中发送smtp邮件的问题 各位仁兄:我想做windows开发,该如何入手? DataGrid的单元格中怎么能检测到上、下方向键被按下,以及Enter键被按下? 哪里有《C#入门经典》电子版的下载!!! .net应用程序自动升级 C#做服务使用Process启动外部程序没窗体?
private void GetTreeViewNode(TreeNode node1)
{
if (node1.Nodes != null)
{
foreach (TreeNode node2 in node1.Nodes)
{
GetTreeViewNode(node2);
}
}
else
{
if (node1.Checked)//选中的时候就。。
{
//do something
}
}
}
{
SetNodeCheckState((TreeNode)e.Node);
} private void SetNodeCheckState(TreeNode parentNode)
{
foreach (TreeNode node in parentNode.Nodes)
{
if (parentNode.Checked == true)
{
//node.Checked = true;
Console.WriteLine(node.Name);//输出选中的树节点,包括子节点。
}
//else
// node.Checked = false;// 此处如果选中父节点,同时选中子节点可去掉注释。
if(node.Nodes.Count>0)
SetNodeCheckState(node);
}
}
{
if (parentNode.Nodes.Count > 1)
{
foreach (TreeNode node in parentNode.Nodes)
{
if (parentNode.Checked == true)
{
node.Checked = true;
Console.WriteLine(node.Text);
}
else
node.Checked = false;
if (node.Nodes.Count > 0)
SetNodeCheckState(node);
}
}
else
{
Console.WriteLine(parentNode.Text);
}
} 方法修改下,这样就可以显示没有子节点的信息。
{
if (tn.Checked && tn.Tag!=null)
{
int id = Convert.ToInt32(tn.Tag);
//MessageBox.Show(id.ToString());
txt.Text += id.ToString() + ",";
}
if (tn.Nodes.Count>0)
{
foreach (TreeNode tn1 in tn.Nodes)
{
saa(tn1);
}
}
}只能获取第一个,第二个后都不能