为什么找不到WPF属性IsDefaulted?

时间:2010-02-13 15:03:37

标签: c# wpf templates button styles

我正在使用此示例处理我的按钮模板:http://msdn.microsoft.com/en-us/library/ms753328.aspx

我发现“IsDefaulted”属性非常有用,但无法使用它。 我有以下触发设置:

<ControlTemplate.Triggers>                      
    <Trigger Property="IsMouseOver" Value="true">
        <Setter TargetName="Presenter" Property="BitmapEffect">
            <Setter.Value>
                <OuterGlowBitmapEffect GlowColor="White" Opacity="0.2" />
            </Setter.Value>
        </Setter>
    </Trigger>

    <Trigger Property="IsDefaulted" Value="true">
        <Setter TargetName="Canvas" Property="Height" Value="40" />
        <Setter Property="FontSize" Value="18" />
    </Trigger>
</ControlTemplate.Triggers>

然而,在构建时,我得到:

  

在类型'System.Windows.Controls.Control'上找不到模板属性'IsDefaulted'。

这很奇怪,因为谷歌没有告诉我任何有关此事的信息,也没有告诉我MSDN或其他任何内容。 经过一些测试,我认为:

-IsMouseOver:作品

-IsPressed:不起作用

-IsDefaulted:不起作用

-IsKeyboardFocused:Works

-IsEnabled:Works

错误?我做错了什么?

1 个答案:

答案 0 :(得分:2)

解决了问题:

<ControlTemplate TargetType="Button">

就这么简单:)