我正在努力使用wpf treeview。 我需要加载一个列表,但它列出了列表中每个对象的名称,而不是我做错了。 我需要一个简单的treeview示例,带有ItemsSource。 我的代码是:
<my:WpfTreeView Name="tvInteracciones" Margin="10,10,10,105">
<TreeViewItem Header="Principios activos" ItemsSource="{Binding V_VistaInteraccionPrincipioActivo}">
<TreeViewItem.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding CFG_CAT_FAR_Interaccion_descripcion}"></TextBlock>
</DataTemplate>
</TreeViewItem.ItemTemplate>
</TreeViewItem>
</my:WpfTreeView>
和
public void LoadInteraccionesPF(List<V_VistaInteraccionPrincipioActivo> lista){
tvInteracciones.ItemsSource = null;
tvInteracciones.Items.Clear();
tvInteracciones.ItemsSource = lista;
}
使用上面的代码,我得到了对象的名称,而不是我想要属性描述的内容。
我的问题是什么?
![这是scrren的结果] [1]
![在此输入图片说明] [2]
问题仍然与您的解决方案相同?
新闻代码图片 http://i.stack.imgur.com/AVJPV.jpg http://i.stack.imgur.com/BkBIz.jpg
答案 0 :(得分:0)
您必须使用项目模板
<TreeView Name="tvInteracciones" Margin="10,10,10,105">
<TreeViewItem Header="Principios activos" ItemsSource="{Binding Path=CFG_CAT_FAR_Interaccion}">
<TreeViewItem.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}"></TextBlock>
</DataTemplate>
</TreeViewItem.ItemTemplate>
</TreeViewItem>
</TreeView>
试试这种方式......
不要将任何itemssource指定为treeview项.... itemssource应该始终是一个集合..
<my:WpfTreeView Name="tvInteracciones" Margin="10,10,10,105">
<TreeViewItem Header="Principios activos">
<TreeViewItem.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding CFG_CAT_FAR_Interaccion_descripcion}"></TextBlock>
</DataTemplate>
</TreeViewItem.ItemTemplate>
</TreeViewItem>
</my:WpfTreeView>
我更新了xaml .... 试试这个
<my:WpfTreeView Margin="10,10,10,105">
<TreeViewItem Header="Principios activos" Name="tvInteracciones">
<TreeViewItem.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding CFG_CAT_FAR_Interaccion_descripcion}"></TextBlock>
</DataTemplate>
</TreeViewItem.ItemTemplate>
</TreeViewItem>
</my:WpfTreeView>
在上面的代码中,而不是将itemssource提供给wpftreeview ...我将项目源提供给treeviewitem ...只需更改名称给wpftreeview项目.....