我开始学习WPF了。我选择建立简单的ItemStructureCreator 我也在使用MVVM模式 我实现了一些类,并遇到了将其正确绑定到TreeView的问题。
现在我希望我的StructureManagerView让TreeView控件与我的结构相关联 我试着像这样绑定它:
<TreeView Name="tree" DataContext="{Binding MainItem}" Grid.Column="0" Background="Beige">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Item.Children}">
<TextBlock Text="{Binding Item.Code}" HorizontalAlignment="Stretch"/>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
或者像这样(我认为这是错误的,因为ItemsSource
属性需要收集):
<TreeView Name="tree" ItemsSource="{Binding MainItem}" Grid.Column="0" Background="Beige">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate ItemsSource="{Binding Item.Children}">
<TextBlock Text="{Binding Item.Code}" HorizontalAlignment="Stretch"/>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
您能否帮我正确设置Bindigs
。
问候,德米特里。
答案 0 :(得分:2)
将我的评论转换为答案:
TreeView没有“主要项目”的概念。
您应该绑定TreeView本身的ItemsSource属性。
ItemsSource="{Binding MainItem}"
应替换为
ItemsSource="{Binding MainItems}"
其中MainItems是IEnumerable