Condividi tramite


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 l'output di cui è stato eseguito il rendering:

output di rendering dell'esempio XAML CornerRadius

Commenti

Note sulla sintassi XAML

Anche se è 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 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 vuole dichiarare una risorsa chiave che può essere usata da più istanze di Border per border.CornerRadius. Per altre informazioni sul testo di inizializzazione XAML, vedere 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 uniformeRadius (gli altri valori vengono ignorati). È necessario specificare tutti e quattro i valori per usare un comportamento diverso rispetto a 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 risorsa e quindi applicare la risorsa a un CornerRadius bordo.

<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 un linguaggio Microsoft .NET (C# o Microsoft Visual Basic) o estensioni del componente Visual C++ (C++/CX), CornerRadius dispone di membri non dati disponibili e i relativi membri dati vengono esposti come proprietà di lettura-scrittura, non campi. Vedere CornerRadius nel browser API .NET.

Se si esegue la programmazione con C++/WinRT o Windows Runtime libreria modelli C++ (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 presenti 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

BottomLeft

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

BottomRight

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

TopLeft

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

TopRight

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

Si applica a