CornerRadius Struct

Definizione

Descrive le caratteristiche di un angolo arrotondato, ad esempio può essere applicato a un bordo.

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"/>
Ereditarietà
CornerRadius
Attributi

Esempio

Questo esempio XAML mostra diversi stili di Border usando valori CornerRadius diversi:

<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>

Il codice XAML produce questo output sottoposto a rendering:

output sottoposto a rendering dell'esempio XAML CornerRadius

Commenti

Note sulla sintassi XAML

Sebbene sia possibile specificare un oggetto CornerRadius come elemento oggetto, non è possibile specificare i singoli valori, ad BottomLeft esempio gli attributi di tale elemento oggetto. Il parser XAML non supporta l'impostazione dei valori degli attributi XAML per questa struttura. Ad esempio, questo codice XAML non funziona:

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

È invece necessario specificare i valori come testo di inizializzazione all'interno di CornerRadius. L'uso della sintassi dell'elemento oggetto per un CornerRadius oggetto è utile se si desidera dichiarare una risorsa con chiave che può essere usata da più istanze di Border per border.CornerRadius. Per altre info sul testo di inizializzazione XAML, vedi guida alla sintassi XAML.

Se si specifica una stringa di attributo o un testo di inizializzazione con due o tre valori, viene rispettato solo il primo valore e viene considerato come uniformRadius (gli altri valori vengono ignorati). È necessario specificare tutti e quattro i valori per usare un comportamento diverso da uniformRadius.

È possibile usare uno spazio anziché una virgola come delimitatore tra i valori.

In questo esempio viene illustrato come usare il testo di inizializzazione per impostare i valori di una CornerRadius risorsa e quindi applicare la risorsa a un oggetto Border.

<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>

Proiezione e membri di CornerRadius

Se si usa C#, CornerRadius dispone di membri non dati disponibili e i relativi membri dati vengono esposti come proprietà di lettura/scrittura, non come campi. Vedere CornerRadius nel browser api di .NET.

Se si esegue la programmazione con C++/WinRT o la libreria di modelli C++ Windows Runtime (WRL), esistono solo i campi membro dati come membri di CornerRadius e non è possibile usare i metodi di utilità o le proprietà della proiezione .NET. Il codice C++ può accedere a metodi di utilità simili esistenti nella classe CornerRadiusHelper .

Questa tabella mostra i metodi equivalenti disponibili in .NET e C++.

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

Campi

Nome Descrizione
BottomLeft

Raggio dell'arrotondamento, in pixel, dell'angolo inferiore sinistro dell'oggetto in cui viene applicato un oggetto CornerRadius .

BottomRight

Raggio dell'arrotondamento, in pixel, dell'angolo inferiore destro dell'oggetto in cui viene applicato un oggetto CornerRadius .

TopLeft

Raggio dell'arrotondamento, in pixel, dell'angolo superiore sinistro dell'oggetto in cui viene applicato un oggetto CornerRadius .

TopRight

Raggio dell'arrotondamento, in pixel, dell'angolo superiore destro dell'oggetto in cui viene applicato un oggetto CornerRadius .

Si applica a