有没有一种方法可以在不给资源键的情况下从代码中向ResourceDictionary添加资源?
例如,我在XAML中有这个资源:
<TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type xbap:FieldPropertyInfo}"
ItemsSource="{Binding Path=Value.Values}">
<TextBlock Text="{Binding Path=Name}" />
<HierarchicalDataTemplate>
</TreeView.Resources>
我需要从代码动态创建此资源并将其添加到TreeView ResourceDictionary中。但是,在XAML中没有Key意味着它默认用于所有FieldPropertyInfo类型。是否有一种方法可以在不使用键的情况下将其添加到资源中,或者是否有一种方法可以使用键并仍然在所有FieldPropertyInfo类型上使用它?
以下是我在C#中所做的:
HierarchicalDataTemplate fieldPropertyTemplate = new HierarchicalDataTemplate("FieldProperyInfo");
fieldPropertyTemplate.ItemsSource = new Binding("Value.Values");
this.Resources.Add(null, fieldPropertyTemplate);
很明显,将资源添加到ResourceDictionary时使用null作为键是行不通的。