xaml
Kontrollmallar
Sök…
Kontrollmallar
Standardanvändargränssnitten för WPF-kontroller är vanligtvis konstruerade från andra kontroller och former. Till exempel består en knapp av både ButtonChrome- och ContentPresenter-kontroller. ButtonChrome tillhandahåller standardknapputseende, medan ContentPresenter visar knappens innehåll, som anges av Egenskapen Content. Ibland kan standardkontrollen för en kontroll vara oförenlig med det allmänna utseendet på en applikation. I det här fallet kan du använda ett ControlTemplate för att ändra utseendet på kontrollens användargränssnitt utan att ändra dess innehåll och beteende.
XAML
<Window
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="SDKSample.ControlTemplateButtonWindow"
Title="Button with Control Template" Height="158" Width="290">
<!-- Button using an ellipse -->
<Button Content="Click Me!" Click="button_Click">
<Button.Template>
<ControlTemplate TargetType="{x:Type Button}">
<Grid Margin="5">
<Ellipse Stroke="DarkBlue" StrokeThickness="2">
<Ellipse.Fill>
<RadialGradientBrush Center="0.3,0.2" RadiusX="0.5" RadiusY="0.5">
<GradientStop Color="Azure" Offset="0.1" />
<GradientStop Color="CornflowerBlue" Offset="1.1" />
</RadialGradientBrush>
</Ellipse.Fill>
</Ellipse>
<ContentPresenter Name="content" HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
</ControlTemplate>
</Button.Template>
</Button>
</Window>
C # kod
using System.Windows;
namespace SDKSample
{
public partial class ControlTemplateButtonWindow : Window
{
public ControlTemplateButtonWindow()
{
InitializeComponent();
}
void button_Click(object sender, RoutedEventArgs e)
{
MessageBox.Show("Hello, Windows Presentation Foundation!");
}
}
}
Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow