如何访问ResourceDictionary中的其他资源

时间:2014-10-21 08:54:36

标签: c# wpf

DataTemplate内的Resource Dictionary需要引用Styles.xaml,所以我有以下内容

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
                     xmlns:src="clr-namespace:WPFApp">
    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="resources/Styles.xaml" />
    </ResourceDictionary.MergedDictionaries>

    <DataTemplate DataType="{x:Type src:MyFileInfo}">
        <Grid>
            grid stuff
        </Grid>

        <TextBlock> stuff </TextBlock>
    </DataTemplate>


</ResourceDictionary>

但在DataTemplate说错The proprety "Visual Tree" can only be set once.这是什么意思?将DataTemplate置于ResourceDictionary内是一种好习惯吗?如何访问ResourceDictionary内的其他资源?

1 个答案:

答案 0 :(得分:2)

DataTemplate应该只有一个孩子。使用此:

<DataTemplate DataType="{x:Type src:MyFileInfo}">
    <Grid>
        grid stuff
        <TextBlock> stuff </TextBlock>
    </Grid>        
</DataTemplate>