【问题标题】:Setting Button FlatStyle in WPF在 WPF 中设置按钮 FlatStyle
【发布时间】:2010-10-16 09:24:11
【问题描述】:

我刚刚学习了 WPF 中的样式和控件模板如何影响按钮的外观,

我正在尝试设置 Button 的 FlatStyle,在我看到的资源中我找不到任何可以告诉我如何做到这一点的信息,在 Windows 窗体中这是通过 FlatStyle = Flat 设置的。

如何在 WPF 中做到这一点?

【问题讨论】:

标签: c# wpf controls styles


【解决方案1】:

ToolBar 类定义了一个Style,它使Buttons 看起来很平坦。使用它的一个例子是:

<Button Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}"/>

当使用ToggleButtonStyleKey 时,这也适用于ToggleButton

WPF 允许您完全重新设置控件的样式,使它们看起来像您想要的任何东西,这就是为什么它在Button 控件上没有这样一个特定的FlatStyle 属性。

【讨论】:

  • 哪个更正确?为模仿 ToolBar.ButtonStyle 的 Button 创建样式,或者只使用您提供的代码。谢谢埃德
  • 我认为取决于您的情况。您还可以使用 Style.BasedOn 属性从 ToolBar Button 样式“派生”一个样式。
  • 这是一个很棒的提示。非常感谢,肯特。
  • 如果我可以投票两次。我从来没有想过要从另一个控件中挖出一种样式。非常好的提示。
  • 刚刚注意到 - 将按钮的 Focusable 属性设置为 false 将解决这个问题。 (请注意,该按钮应该仍然可以通过键盘快捷键访问 - 它只是不包含在 Tab 键顺序中,这通常不是工具栏按钮所期望的。)
【解决方案2】:

将以下内容添加到您的窗口/页面资源中:

<Style BasedOn="{StaticResource {x:Static ToolBar.ButtonStyleKey}}" TargetType="Button"></Style>

它将平面样式应用于该样式范围内的所有按钮。

【讨论】:

    猜你喜欢
    • 2012-09-05
    • 2017-01-12
    • 2015-07-24
    • 1970-01-01
    • 2017-10-08
    • 2013-12-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多