C# TreeView项目资源MVVM绑定
我有一个带有默认TreeView项的TreeView,还有一个带有dynaic值。但是,我没有使用TreeViewItem的名称,而是: 整行是:“MyWindowsMediaPlayer.Model.playlidb” XAML:C# TreeView项目资源MVVM绑定,c#,wpf,xaml,mvvm,treeview,C#,Wpf,Xaml,Mvvm,Treeview,我有一个带有默认TreeView项的TreeView,还有一个带有dynaic值。但是,我没有使用TreeViewItem的名称,而是: 整行是:“MyWindowsMediaPlayer.Model.playlidb” XAML: 树视图不知道如何显示PlayDB对象 如下所示覆盖PlayDB的ToString()方法: public override string ToString() { return "NameOfElement"; } 您还可以编辑TreeView资源,如下所述
树视图不知道如何显示PlayDB对象 如下所示覆盖PlayDB的ToString()方法:
public override string ToString()
{
return "NameOfElement";
}
您还可以编辑TreeView资源,如下所述:
您必须在
TreeView
资源下定义DataTemplate
,以定义模板UI应如何呈现TreeView项目的绑定视图模型
<DataTemplate DataType="{x:Type local:PlaylistDB}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding NamePlaylist }" />
</StackPanel>
</DataTemplate>
我明白了,但是我应该把displaymemberpath放在哪里?像user1672994 descibedI一样,我会避免这样做,而将“ToString”“object”成员留给调试信息或“object”序列化。
this.ItemSourceTree.Add(new PlaylistDB() { NamePlaylist = "I'm a test" });
this.ItemSourceTree.Add(new PlaylistDB() { NamePlaylist = "I'm a test 2 " });
public override string ToString()
{
return "NameOfElement";
}
<DataTemplate DataType="{x:Type local:PlaylistDB}">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding NamePlaylist }" />
</StackPanel>
</DataTemplate>