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

Installationsschritte für die chinesische Eingabemethode von Ubuntu 20.04

Dieser Artikel installiert die Google-Eingabemeth...

Basiswissen: Was bedeutet http vor einer Website-Adresse?

Was ist HTTP? Wenn wir eine Website durchsuchen m...

MySQL 8.0 MIT Abfragedetails

Inhaltsverzeichnis Informationen zu WITH-Abfragen...

So verwenden Sie Docker Swarm zum Erstellen von WordPress

Ursache Ich habe WordPress einst auf Vultr einger...

MySql-Anmeldekennwort vergessen und Lösung für vergessenes Kennwort

Methode 1: MySQL bietet einen Befehlszeilenparame...

CSS3 ändert den Bildlaufleistenstil des Browsers

Hinweis: Diese Methode ist nur auf WebKit-basiert...

Vue-Kapselungskomponente Bildkomponente hochladen

In diesem Artikelbeispiel wird der spezifische Co...

Vier praktische Tipps für JavaScript-String-Operationen

Inhaltsverzeichnis Vorwort 1. Eine Zeichenfolge t...

js canvas realisiert kreisförmige Wasseranimation

In diesem Artikelbeispiel wird der spezifische Co...

Tutorial zur Installation von MySQL unter CentOS7

Vor kurzem habe ich vor, eine Cloud-Festplatte au...

CenterOS7 Installations- und Konfigurationsumgebung jdk1.8 Tutorial

1. Deinstallieren Sie zuerst das mit CenterOS gel...

Zusammenfassung gängiger Toolbeispiele in MySQL (empfohlen)

Vorwort Dieser Artikel stellt hauptsächlich die r...

So verwenden Sie das Datums-Plugin vue-bootstrap-datetimepicker in vue-cli 3

Nachfragehintergrund In letzter Zeit plane ich, V...