Setting Button FlatStyle in WPF

c#, controls, styles, wpf

Solution

The `ToolBar` class defines a `Style` that makes `Button`s look flat. An example of using it is:

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

This also works for a `ToggleButton` when using `ToggleButtonStyleKey`.

WPF lets you completely restyle controls to make them look like whatever you want, which is why it doesn't have such a specific `FlatStyle` property on the `Button` control.

Problem

I have just been learning about how styles and control templates in WPF can affect the appearance of buttons, I'm trying to set the Button's FlatStyle, in the resources I've seen I can't find anything that tells me how I can do this, in Windows Forms this is set through `FlatStyle = Flat`. How would one do this in WPF?

Original source

Related problems