从未找到的另一个ResourceDictionary引用基本样式

时间:2013-09-13 15:12:47

标签: c# xaml windows-8 windows-store-apps winrt-xaml

我有自己的逻辑

这个自定义控件
     public class BackButton : Button
{
    public BackButton()
    {
        this.DefaultStyleKey = typeof(Button);
        this.Click += (s, e) => { 
            Services.NavigationService.GoBack(); 
        };
    }
} 

我想将默认样式BackButtonStyle应用于它。我不想编辑StandardStyles.xaml,所以它在另一个ResourceDictionary

 <Style TargetType="controls:BackButton" BasedOn="{StaticResource BackButtonStyle}"/>

在App.xaml中引用

        <ResourceDictionary.MergedDictionaries>
            <ResourceDictionary Source="Common/StandardStyles.xaml"/>
            <ResourceDictionary Source="Common/FrameworkStyles.xaml"/>
        </ResourceDictionary.MergedDictionaries>

正在构建,但抛出此异常:

 Message = "Cannot find a Resource with the Name/Key BackButtonStyle [Line: 15 Position: 44]"

我做错了什么?

1 个答案:

答案 0 :(得分:0)

BackButtonStyle的目标类型为Button,因此您无法使用BackButtonStyle作为controls:BackButton.目标类型的基本样式

<Style x:Key="BackButtonStyle" TargetType="Button">