我有一个ObservableCollection的Patient对象。每个Patient对象都有一个Name属性,一个Id(int)和一个Therapies列表。每个疗法都有一个TherapyName(字符串)。我正在使用TreeView来显示像这样的数据
<sdk:TreeView ItemsSource="{Binding PatientList}" DisplayMemberPath="Name" >
<sdk:TreeView.ItemTemplate>
<sdk:HierarchicalDataTemplate ItemsSource="{Binding Therapies}" >
<TextBlock Text="{Binding TherapyName}"/>
</sdk:HierarchicalDataTemplate>
</sdk:TreeView.ItemTemplate>
当我运行它时,它在浏览器内崩溃。当我删除DisplayMemberPath时,它会运行,但我只获得TherapyNames,患者姓名的父元素为空。
答案 0 :(得分:0)
你不应该有那里的显示成员路径,因为如果你使用的是项源,那就是使用了那个想要选择值的obejct用于树。
你想要做这样的事情
<sdk:TreeView ItemsSource="{Binding PatientList}" DisplayMemberPath="Name" >
<sdk:TreeView.ItemTemplate>
<sdk:HierarchicalDataTemplate ItemsSource="{Binding Therapies}" >
<Stackpanel>
<TextBlock Text="{Binding TherapyName}"/>
<TextBlock Text="{Binding Name}"/>
</Stackpanel>
</sdk:HierarchicalDataTemplate>
</sdk:TreeView.ItemTemplate>
我已经测试了那一点xaml,但它几乎是正确的