-5
我有一個樹狀結構,有很多節點和很多子節點和下降節點。 我想通過點擊treeview找到選中的節點。 後來我寫了下面的代碼:獲取樹視圖的所有檢查節點
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();
但我有以下錯誤:
error CS1106: Extension method must be defined in a non-generic static class
通過我應該指出,這個錯誤是public partial class Form1 : Form
的方式。
您能否讓我知道問題在哪裏?
它明確提到,你的'Extension'方法必須在'static'類 – Chaitanya
@Chaitanya你的意思是Form1:Form? – Saber
我必須猜測,因爲你沒有在你的問題中指定。嘗試在一個單獨的類中實現你的'擴展'方法。也許它可以解決您的問題 – Chaitanya