在ResourceDictionaries中包含用于多个控件的共享资源

时间:2018-12-11 15:07:47

标签: wpf xaml resourcedictionary

我有一个from sklearn.metrics import confusion_matrix confusion_matrix(labels_test, pred) 我想与多个DataTemplate一起使用。但是这些控件中的每一个都还需要包含其他ContentControl,并且每个列表的最终列表都不同。像这样:

DataTemplate

是否存在让我执行此操作的XAML语法?我可以创建一个“ AddResourceToDictionary”附加行为,或者将FooDataTemplate放入其自己的资源字典文件中并合并,但是对于一个简单的事情来说,两者似乎都非常麻烦...

1 个答案:

答案 0 :(得分:1)

您可以将ContentControl's添加到ResourceDictionary <ContentControl> <ContentControl.Resources> <ResourceDictionary> <DataTemplate DataType="{x:Type Bar}" /> <StaticResource ResourceKey="FooDataTemplate" /> </ResourceDictionary> </ContentControl.Resources> </ContentControl> 中,前提是它在范围内:

DataTemplate

但是,如果您想要“ FooDataTemplate的副本,但没有显式密钥”,则需要自己创建一个新的DataTemplate。没有XAML语法可让您将FooDataTemplate建立在另一个语法的基础上。必须将模板定义为一个整体。因此,我想您的问题的答案根本不是。

ContentControl's仅可按原样引用和使用。而且,由于它已经在范围内,因此将其添加到ResourceDictionary {{1}}中实际上没有任何意义。