我将如何修改当前的TreeView以支持“关键,警报”的父节点,然后子节点将成为该严重性类型的消息。我正在使用与TreeView绑定的ObservableCollection。每种消息类型中都有更多数据,但是我只希望其中一些对用户可见。然后,当用户单击一个子节点时,从集合中的该项目中提取其他数据,并在需要的地方显示它。我将ID添加为隐藏,因为我不确定是否需要引用唯一引用集合中该项目的内容。我还想为每个父节点默认一个不同的图标,子节点将没有图标。
希望我对此进行描述,以便可以理解。
XMAL
<TreeView x:Name="tvMessages" HorizontalAlignment="Left" Height="262" Margin="10,37,0,0" VerticalAlignment="Top" Width="248">
<TreeView.ItemTemplate>
<HierarchicalDataTemplate>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding Icon}" />
<TextBlock Text="{Binding Description}" />
<TextBlock Text="{Binding ID}" Visibility="Hidden" />
</StackPanel>
</HierarchicalDataTemplate>
</TreeView.ItemTemplate>
</TreeView>
消息数据
public class MessageData
{
public Guid ID { get; set; }
public string Severity { get; set; }
public string Description { get; set; }
public string ClientID { get; set; }
public string Specialty { get; set; }
public DateTime IssuedDate { get; set; }
}
最佳答案
它有点老,但是这个MSDN博客应该让您朝着正确的方向http://blogs.msdn.com/b/mikehillberg/archive/2009/10/30/treeview-and-hierarchicaldatatemplate-step-by-step.aspx
关于c# - WPF TreeView节点和子节点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20344313/