C# 如何使用C查找树视图中所有选中的节点#
这是我正在使用的代码,但我总是从函数中得到一个空白字符串。C# 如何使用C查找树视图中所有选中的节点#,c#,treeview,C#,Treeview,这是我正在使用的代码,但我总是从函数中得到一个空白字符串。 我如何解决这样的问题 private string GetArrayofCheckedNodes() { string arrCheckedNodes = ""; ArrayList al = new ArrayList(); foreach (TreeNode node in TreeView1.Nodes) { if (node.Checked == true) // Checking
我如何解决这样的问题
private string GetArrayofCheckedNodes()
{
string arrCheckedNodes = "";
ArrayList al = new ArrayList();
foreach (TreeNode node in TreeView1.Nodes)
{
if (node.Checked == true) // Checking whether a node is checked or not.
{
al.Add(node.Text);
}
}
for (int i = 0; i < al.Count; i++)
{
arrCheckedNodes += al[i].ToString() + " , ";
}
return arrCheckedNodes;
}
私有字符串GetArrayofCheckedNodes()
{
字符串arrCheckedNodes=“”;
ArrayList al=新的ArrayList();
foreach(TreeView1.Nodes中的TreeNode节点)
{
if(node.Checked==true)//检查节点是否已检查。
{
al.Add(node.Text);
}
}
对于(int i=0;i
我假设您想要所有选中的节点TreeView1.Nodes
仅返回第一级,因此需要在树下递归。此外,还可以使用string.Join()
将结果值连接在一起
private string GetArrayofCheckedNodes()
{
return string.Join(" , ", GetCheckedNodes(treeView1.Nodes));
}
public List<string> GetCheckedNodes(TreeNodeCollection nodes)
{
List<string> nodeList = new List<string>();
if (nodes == null)
{
return nodeList;
}
foreach (TreeNode childNode in nodes)
{
if (childNode.Checked)
{
nodeList.Add(childNode.Text);
}
nodeList.AddRange(GetCheckedNodes(childNode.Nodes));
}
return nodeList;
}
私有字符串GetArrayofCheckedNodes()
{
返回字符串.Join(“,”,GetCheckedNodes(treeView1.Nodes));
}
公共列表GetCheckedNodes(TreeNodeCollection节点)
{
列表节点列表=新列表();
如果(节点==null)
{
返回节点列表;
}
foreach(节点中的TreeNode子节点)
{
if(childNode.Checked)
{
添加(childNode.Text);
}
AddRange(GetCheckedNodes(childNode.Nodes));
}
返回节点列表;
}
对不起,之前有一个小错误。我现在已经改正了!