So zeichnen Sie eine Schaltfläche in XAML als Kreis neu

So zeichnen Sie eine Schaltfläche in XAML als Kreis neu
Beim Verwenden des XAML-Layouts müssen manchmal einige Schaltflächen Kreise anstelle der standardmäßigen Rechtecke verwenden, um der Benutzeroberfläche ein Metro-ähnliches Aussehen zu verleihen. Der folgende Button-Stil kann dieses Problem lösen und kann entsprechend Ihren Anforderungen geändert werden. Wenn Sie mit Bland vertraut sind, können Sie es natürlich direkt verwenden, um den gewünschten Stil zu zeichnen, aber ist es schneller, den Code einzufügen?

Code kopieren
Der Code lautet wie folgt:

<Style x:Key="btnNext" Zieltyp="Schaltfläche">
<Setter-Eigenschaft="Vorlage">
<Setter.Wert>
<ControlTemplate TargetType="Schaltfläche">
<Raster>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Gedrückt">
<Storyboard>
<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(FrameworkElement.Margin)" Storyboard.TargetName="Rechteck">
<DiscreteObjectKeyFrame KeyTime="0">
<DiskretesObjektKeyFrame.Wert>
<Dicke>-3</Dicke>
</DiscreteObjectKeyFrame.Value>
</DiskretesObjektKeyFrame>
</ObjectAnimationUsingKeyFrames>
</Storyboard>
</VisualState>
<VisualState x:Name="Normal"/>
<VisualState x:Name="Deaktiviert"/>
<VisualState x:Name="MouseOver"/>
</VisualStateGroup>
<VisualStateGroup x:Name="FocusStates">
<VisualState x:Name="Fokussiert"/>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rechteck x:Name="Rechteck" RadiusY="25" RadiusX="25" Strich="Blau" Strichstärke="4">
</Rechteck>
<ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
</Raster>
</ControlTemplate>
</Setter.Wert>
</Setter>
<Setter-Eigenschaft="Margin" Wert="5"/>
<Setter-Eigenschaft="Breite" Wert="50"/>
<Setter-Eigenschaft="Höhe" Wert="50"/>
<Setter-Eigenschaft="Schriftgröße" Wert="120"/>
<Setter Property="Vordergrund" Value="Weiß"/>
</Stil>

<<:  Detaillierte Erläuterung des Datenproxys und der Ereignisse von VUE

>>:  Zwei Möglichkeiten, die CSS-Priorität zu verstehen

Artikel empfehlen

JavaScript Canvas-Textuhr

In diesem Artikelbeispiel wird der spezifische Co...

CSS-Schreibformat, detaillierte Erklärung der Grundstruktur einer mobilen Seite

1. CSS-Schreibformat 1. Inline-Stile Sie können C...

Erläuterung des Beispiels einer MySQL-Datenanalyse-Speicher-Engine

Inhaltsverzeichnis 1. Fälle vorstellen 2. Zeigen ...

Beispiel für eine einfache Operation einer MySQL-Abfrageanweisung

Dieser Artikel veranschaulicht anhand von Beispie...

So löschen Sie node_modules und installieren es neu

Inhaltsverzeichnis Schritt 1: Installieren Sie no...

Easyswoole Ein-Klick-Installationsskript und Pagoden-Installationsfehler

Häufig gestellte Fragen Wenn Sie easyswoole zum e...

Der Browser der Betaversion IE9 unterstützt HTML5/CSS3

Manche Leute sagen, dass IE9 die zweite Revolutio...

Grundlegende Kenntnisse zum MySQL UNION-Operator

MySQL UNION-Operator Dieses Tutorial stellt die S...

Wie gut kennen Sie sich mit reinen HTML-Tags aus?

Die folgenden HTML-Tags umfassen grundsätzlich all...

Bildschirmbefehl und Verwendung unter Linux

Bildschirmeinführung Screen ist eine vom GNU-Proj...

Einige Fallstricke beim JavaScript Deep Copy

Vorwort Als ich zuvor zu einem Vorstellungsgesprä...

So implementieren Sie einen einfachen HTML-Videoplayer

Dieser Artikel stellt die Methode zur Implementie...

So dekomprimieren Sie mehrere Dateien mit dem Befehl „unzip“ in Linux

Lösung für das Problem, dass in Linux kein Entpac...