Silverlight Treeview DisplayMemberPath 不工作

发布于 2024-12-07 05:48:04 字数 647 浏览 0 评论 0原文

我有一个 Patient 对象的 ObservableCollection。每个 Patient 对象都有一个 Name 属性、一个 Id (int) 和一个治疗列表。每个疗法都有一个 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,患者姓名的父元素为空。

I have a ObservableCollection of Patient objects. Each Patient object has a Name property, an Id (int) and a List of Therapies. Each Therapy has a TherapyName(string). I'm using the TreeView to display the data like this

<sdk:TreeView ItemsSource="{Binding PatientList}" DisplayMemberPath="Name" >
            <sdk:TreeView.ItemTemplate>
                <sdk:HierarchicalDataTemplate ItemsSource="{Binding Therapies}" >
                    <TextBlock Text="{Binding TherapyName}"/>
                </sdk:HierarchicalDataTemplate>
            </sdk:TreeView.ItemTemplate>

When I run it, it crashes inside the browser.When i remove the DisplayMemberPath, it runs but I only get the TherapyNames, the parent elements for Patient Names are empty.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

星軌x 2024-12-14 05:48:04

您不应该在那里显示成员路径,因为如果您使用项目源并且想要选择值的对象中的值用于树,则使用此路径。

你想做这样的事情

    <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,但它应该几乎是正确的

you shouldnt have display member path there as this is used if you are using item source and the in that obejct wanting to select values are used for the tree.

you want to do some thing like this

    <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> 

I havnt tested that bit of xaml but it should be nearly right

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文