【发布时间】:2014-01-23 14:06:20
【问题描述】:
我需要在我的 WPF 项目中使用动态节点创建来创建 TreeView。 TreeView 节点有一个条件。所有叶子都必须包含单选按钮,其工作逻辑与单选按钮组相同。
我有这个 XAML 代码,它描述了树视图数据模板:
<HierarchicalDataTemplate x:Key="sko_ver_hdt">
<RadioButton Margin="0,0,10,0" Content="{Binding Version}"/>
</HierarchicalDataTemplate>
<HierarchicalDataTemplate x:Key="sko_hdt"
ItemTemplate="{StaticResource sko_ver_hdt}"
ItemsSource="{Binding Children}">
<TextBlock Text="{Binding Name}"/>
</HierarchicalDataTemplate>
我尝试使用 CollectionViewSource 对 TreeView 的节点进行分组,如下所示:
<CollectionViewSource x:Key="cvs" Source="{Binding SKOs}">
<CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="Version"/>
</CollectionViewSource.GroupDescriptions>
</CollectionViewSource>
但什么也没发生。
我有一个描述树视图数据的模型:
internal class SKOVM
{
public SKOVM(DBCommunication.SKO sko)
{
Name = sko.Name;
Version = sko.VersionCode;
Id = sko.Id;
Children = new ObservableCollection<SKOVM>(sko.SKO1.Select(x => new SKOVM(x)));
sko.SKOSystemInformationReference.Load();
if (sko.SKOSystemInformation != null)
Version = String.Format("{0} / {1}", Version, sko.SKOSystemInformation.Designer);
}
public long Id { get; set; }
public string Name { get; set; }
public string Version { get; set; }
public ObservableCollection<SKOVM> Children { get; set; }
}
有什么想法可以为我的树视图叶节点实现分组单选按钮行为逻辑吗?
提前致谢。
【问题讨论】:
-
如果回答对您的问题有帮助,请采纳,以便将该问题标记为已回答。