来自另一个程序集的WPF数据模板

本文关键字:数据 WPF 另一个 程序集 | 更新日期: 2023-09-27 18:07:05

是否可以在DataTemplateSelector中引用位于另一个程序集中的DataTemplate

目前我有这样的东西:

public override DataTemplate SelectTemplate(object item, DependencyObject container)
    {
        var element = container as FrameworkElement;
        if (element != null && item != null && item is BrowserBaseViewModel)
        {
            return element.FindResource("BrowserDataTemplate") as DataTemplate;
        }
        return null;
    }

来自另一个程序集的WPF数据模板

当然,在你的app.xaml a ResourceDictionary中写上"include",这样就可以在你的应用程序中找到字典了。

<Application.Resources>
    <ResourceDictionary>
        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="/MyOtherAssembly;component/MyAssemblyXaml.xaml" />

现在你的数据模板将被找到,因为资源查找将查找app.xaml资源,并找到你引用的xaml.