1
的树给定一个类:写LINQ表达式来选择项目
class Control
{
public Control Parent { get; set; }
public List<Control> Children { get; set; }
}
和一个列表:
List<Control> myControls;
是否可以写一个LINQ查询,将选择所有的孩子&孙子对于给定的控制?例如,如果一个树是这个样子:
GridA1
PanelA1
TextBoxA1
TextBoxA2
PanelA2
ListBoxA1
ListBoxA2
GridB1
PanelB1
TextBoxB1
我想查询的是,给定的列表,包含所有以上家长和儿童的属性设置为approriate控制可以与PanelA1进行参数和返回TextBoxA1,TextBoxA2 myControls ,PanelA2,ListBoxA1和ListBoxA2。有没有一种有效的方法来与linq做到这一点?我从数据库中选择了一个树结构,并寻找一种比递归函数更好地分离子树的方法。