我有一个包含许多节点和许多子节点和下降节点的树视图。 我想通过单击树视图找到已检查的节点。 然后我写了下面的代码:
internal static IEnumerable<TreeNode> Descendants(this TreeNodeCollection tNode)
{
foreach (var node in tNode.OfType<TreeNode>())
{
yield return node;
foreach (var child in node.Nodes.Descendants())
{
yield return child;
}
}
}
var selectedNodes = treeView1.Nodes.Descendants()
.Where(n => n.Checked)
.Select(n => n.Text)
.ToList();
但我有以下错误:
错误CS1106:扩展方法必须在非泛型静态类中定义
顺便提一下,我应该提到这个错误是public partial class Form1 : Form
。
请您告诉我问题在哪里?
答案 0 :(得分:0)
在 SEPARATE 静态类(非嵌套)中编写扩展方法。将另一个文件添加到项目中,并在其中创建一个静态类,其中包含静态扩展方法。
您的问题中的错误(以及您尝试将其添加到嵌套类中的错误)应该是不言自明的