全局按钮光标

时间:2012-02-08 17:47:24

标签: wpf xaml

有没有办法在应用程序级别为控件类型设置默认光标?我想说所有Button控件,无论它们是否具有特定样式,都有一个手形光标的默认光标,除非它在该按钮的个别样式规范中被覆盖。

这是一个具有自己风格的按钮示例,我想覆盖默认的

<UserControl>
    <UserControl.Resources>
        <Style x:Key="CloseButtonStyle" TargetType="{x:Type Button}">
            <Setter Property="Template">
                <Setter.Value>
                    <ControlTemplate TargetType="{x:Type Button}">
                        <Grid>
                            <!-- My button's custom content here -->
                        </Grid>
                    </ControlTemplate>
                </Setter.Value>
            </Setter>
        </Style>
    </UserControl.Resources>

    <Button x:Name="btnClose" Style="{DynamicResource CloseButtonStyle}"/>
</UserControl>

1 个答案:

答案 0 :(得分:9)

将下面的样式放在App.xaml文件中的Application.Resources中。

<Style TargetType="Button">
  <Setter Property="Cursor" Value="Hand"/>
</Style>

<强>更新

关于第3条评论: 为此,您只需将控件模板保留在UserControl.Resources

<ControlTemplate x:Key="CloseButtonTemplate" TargetType="{x:Type Button}">
   <Grid>
      <!-- My button's custom content here -->
   </Grid>
</ControlTemplate>

然后为Template设置Button属性:

<Button Template="{DynamicResource CloseButtonTemplate}"/>