在您的 WPF 应用程序中,您应该有一个App.xaml
文件,您可以在其中添加Styles
要在整个 UI 中使用的文件。
例子:
<Application x:Class="WpfApplication8.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
<!--The style for all your buttons, setting the background property to your custom brush-->
<Style TargetType="{x:Type Button}"> <!--Indicate that this style should be applied to Button type-->
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Black"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
</Application.Resources>
</Application>
或者,如果您不想应用到所有按钮,您可以给您Style
的 a Key
,这样您就可以应用到 UI 中的某些按钮
<Application x:Class="WpfApplication8.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="MainWindow.xaml">
<Application.Resources>
<!--Add a x:Key value so you can use on certain Buttons not all-->
<Style x:Key="MyCustomStyle" TargetType="{x:Type Button}">
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="Black"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
</Application.Resources>
</Application>
要Style
在 a 上使用它Button
,只需将绑定添加Style
到Button
<Button Style="{StaticResource MyCustomStyle}" />
这将适用Style
于这个Button
或者,如果您真的想在后面的代码中执行此操作,只需将Brush
您想要的添加到后台
Button b = new Button
{
Background = new LinearGradientBrush(Colors.Black, Colors.White, new Point(0.5, 1), new Point(0.5, 0))
};
将 xaml 转换为代码非常容易,因为 xaml 使用完全相同的属性名称,例如我在上面发布的代码刷:
new LinearGradientBrush(Colors.Black, Colors.White, new Point(0.5, 1), new Point(0.5, 0))
是 ....
Brush(firstColor,secondColor,StartPoint EndPoint)
Xaml 只是访问按钮中的属性,它们在 C# 中都将具有相同的名称。