【问题标题】:Silverlight Treeview DisplayMemberPath not workingSilverlight Treeview DisplayMemberPath 不工作
【发布时间】:2011-09-28 22:00:13
【问题描述】:

我有一个患者对象的 ObservableCollection。每个 Patient 对象都有一个 Name 属性、一个 Id (int) 和一个治疗列表。每个疗法都有一个 TherapyName(string)。我正在使用 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,Patient Names 的父元素是空的。

【问题讨论】:

    标签: silverlight treeview


    【解决方案1】:

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

    你想做这样的事情

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

    【讨论】:

    • 谢谢你,如果我删除 displaymemberpath 并按照你说的那样添加模板:)
    猜你喜欢
    • 2010-11-17
    • 2018-11-04
    • 1970-01-01
    • 2014-10-24
    • 1970-01-01
    • 2011-03-24
    • 2010-10-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多