В настоящее время я пытаюсь привязать свой бизнес-объект к древовидной структуре в качестве корня.И его коллекционное свойство как у ребенка.[Я хочу добиться этого с помощью BINDING]
Как-то так.
public object MyBusinessObject
{
private int _number;
private bool _isSelected;
private ObservableCollection<AnotherObject> _other = new ObservableCollection<AnotherObject>();
public int Number { get {return _number;} set {_number = value;}}
public bool IsSelected{ get {return _isSelected;} set {_isSelected= value;}}
public ObservableCollection<AnotherObject> Children { get {return _other;}}
}
Я хочу, чтобы мое древовидное представление отображалось так:
- "CheckBox bindedto IsSelected "" Текст, привязанный к числу "
- Список дочерних элементов, привязанных к моим" Children "
- Список дочерних элементов, привязанных к моим" Children "
- Список дочерних элементов, привязанных к моим" Children "my "Children"
- "CheckBox, привязанный к IsSelected" "Text, привязанный к Number"
- Список потомков, привязанный к моим "Children"
- Listребенка, привязанного к моим "Детям"
- Список детей, привязанных к моим "Детям"
Я не знаю, как это сделать в xaml:
<TreeView x:Name="_tv" ItemsSource="{Binding Path=MyBusinessObject}" >
<TreeView.Resources>
<HierarchicalDataTemplate>
<CheckBox Content="{Binding Path=Number} IsChecked="{Binding Path=IsSelected}" />
</HierarchicalDataTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Path=Children}">
<TextBlock Text="{Binding Path=Name}" />
</HierarchicalDataTemplate>
</TreeView.Resources>
</TreeView>
Я знаю, что вышеупомянутое не правильно, но мне было интересно, есть ли способ сделать это правильно.
Спасибо и С уважением,