1

別のアセンブリで定義されているリソースディクショナリからDataTemplatesを設定しようとしているTreeView要素があります。私はかなり単純なアプローチを使用しています:

<TreeView x:Name="treeView"
                  ItemsSource="{Binding Path=Vehicles}">
            <TreeView.Resources>                
                <ResourceDictionary>
                    <ResourceDictionary.MergedDictionaries>
                        <ResourceDictionary Source="pack://application:,,,/CarsLib;component/TreeTemplateDictionary.xaml"/>
                    </ResourceDictionary.MergedDictionaries>
                </ResourceDictionary>
            </TreeView.Resources>
        </TreeView>

でも。これはうまくいかないようです。デバッグしたところ、ResourceDictionaryがロードされていることに気づきました。私が欠けているものを理解するのを手伝ってください。ResourceDictionaryは次のようになります。

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                xmlns:local="clr-namespace:CarsLib">
<HierarchicalDataTemplate x:Key="StationTreeViewTemplate"
                          DataType="{x:Type local:Station}" 
                          ItemsSource="{Binding Path=FamounsModels}">
    <DockPanel>
        <TextBlock Text="{Binding Path=Name}" Margin="3,3,3,3" />
        <TextBlock Text="{Binding Path=EngineSize}" Margin="3,3,3,3" />
    </DockPanel>
</HierarchicalDataTemplate>

ありがとう、

Izhar Lotem

4

2 に答える 2

4

このバグを解決することができました。x:Keyを中から外しまし HierarchicalDataTemplateResourceDictionary

于 2011-05-23T13:47:56.877 に答える