Freigeben über


CornerRadius Struktur

Definition

Beschreibt die Merkmale einer abgerundeten Ecke, z. B. die auf einen Rahmen angewendet werden kann.

public value class CornerRadius
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
struct CornerRadius
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
public struct CornerRadius
Public Structure CornerRadius
<CornerRadius>uniformRadius</CornerRadius>
-or-
<CornerRadius>topLeft,topRight,bottomRight,bottomLeft</CornerRadius>
- or -
<object property="uniformRadius"/>
- or -
<object property="topLeft,topRight,bottomRight,bottomLeft"/>
Vererbung
CornerRadius
Attribute

Beispiele

Dieses XAML-Beispiel zeigt verschiedene Stile von Rahmen , die verschiedene CornerRadius-Werte verwenden:

<StackPanel>
    <Border Height="30" Width="200" CornerRadius="0"
     BorderThickness="2" BorderBrush="Red" Margin="5">
        <TextBlock>CornerRadius: 0</TextBlock>
    </Border>
    <Border Height="30" Width="200" CornerRadius="5"
     BorderThickness="2" BorderBrush="Red" Margin="5">
        <TextBlock>CornerRadius: 5</TextBlock>
    </Border>
    <Border Height="30" Width="200" CornerRadius="5,0,5,0"
     BorderThickness="2" BorderBrush="Red" Margin="5">
        <TextBlock>CornerRadius: 5,0,5,0</TextBlock>
    </Border>
    <Border Height="30" Width="200" CornerRadius="5,5,0,0"
     BorderThickness="2" BorderBrush="Red" Margin="5">
        <TextBlock>CornerRadius: 5,5,0,0</TextBlock>
    </Border>
</StackPanel>

Der XAML-Code erzeugt diese gerenderte Ausgabe:

Gerenderte Ausgabe des CornerRadius-XAML-Beispiels

Hinweise

Hinweise zur XAML-Syntax

Obwohl Sie ein CornerRadius als Objektelement angeben können, können Sie die einzelnen Werte nicht angeben, z BottomLeft . B. als Attribute dieses Objektelements. Der XAML-Parser unterstützt das Festlegen von XAML-Attributwerten für diese Struktur nicht. Dieser XAML-Code funktioniert beispielsweise nicht:

<!-- THIS DOES NOT WORK -->
<CornerRadius x:Key="CornerRadiusError" BottomLeft="20"/>

Stattdessen müssen Sie die Werte als Initialisierungstext innerhalb des CornerRadiusangeben. Die Verwendung der Objektelementsyntax für ein CornerRadius ist nützlich, wenn Sie eine schlüsselierte Ressource deklarieren möchten, die von mehreren Border-Instanzen für ihre Border.CornerRadius-Instanz verwendet werden kann. Weitere Informationen zu XAML-Initialisierungstext finden Sie unter XAML-Syntaxleitfaden.

Wenn Sie eine Attributzeichenfolge oder einen Initialisierungstext mit zwei oder drei Werten angeben, wird nur der erste Wert berücksichtigt und als uniformRadius behandelt (die anderen Werte werden ignoriert). Sie müssen alle vier Werte angeben, um ein anderes Verhalten als uniformRadius zu verwenden.

Sie können ein Leerzeichen anstelle eines Kommas als Trennzeichen zwischen Werten verwenden.

In diesem Beispiel wird gezeigt, wie Sie mithilfe von Initialisierungstext die Werte einer CornerRadius Ressource festlegen und die Ressource dann auf einen Rahmen anwenden.

<Page.Resources>
    <CornerRadius x:Key="CornerRadius4010">40,10,40,10</CornerRadius>
</Page.Resources>

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <Border BorderBrush="Blue" BorderThickness="2"
            CornerRadius="{StaticResource CornerRadius4010}"/>
</Grid>

Projektion und Elemente von CornerRadius

Wenn Sie eine Microsoft .NET-Sprache (C# oder Microsoft Visual Basic) oder Visual C++-Komponentenerweiterungen (C++/CX) verwenden, stehen in CornerRadius nicht-Datenmember zur Verfügung, und die Datenmember werden als Eigenschaften mit Lese-/Schreibzugriff und nicht als Felder verfügbar gemacht. Weitere Informationen finden Sie unter CornerRadius im .NET-API-Browser.

Wenn Sie mit C++/WinRT oder der Windows-Runtime C++-Vorlagenbibliothek (WRL) programmieren, sind nur die Datenmemberfelder als Member von CornerRadius vorhanden, und Sie können die Hilfsprogrammmethoden oder -eigenschaften der .NET-Projektion nicht verwenden. C++-Code kann auf ähnliche Hilfsprogrammmethoden zugreifen, die in der CornerRadiusHelper-Klasse vorhanden sind.

In dieser Tabelle sind die entsprechenden Methoden aufgeführt, die in .NET und C++ verfügbar sind.

.NET (CornerRadius) C++ (CornerRadiusHelper)
CornerRadius(Double) FromUniformRadius(Double)
CornerRadius(Double, Double, Double, Double) FromRadii(Double, Double, Double, Double)

Felder

BottomLeft

Der Radius der Rundung in Pixel der unteren linken Ecke des Objekts, in dem ein CornerRadius angewendet wird.

BottomRight

Der Radius der Rundung in Pixeln der unteren rechten Ecke des Objekts, in dem ein CornerRadius angewendet wird.

TopLeft

Der Radius der Rundung in Pixeln der oberen linken Ecke des Objekts, in dem ein CornerRadius angewendet wird.

TopRight

Der Radius der Rundung in Pixeln der oberen rechten Ecke des Objekts, in dem ein CornerRadius angewendet wird.

Gilt für: