CornerRadius Struct
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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:
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 |
BottomRight |
Raggio di arrotondamento, in pixel, dell'angolo inferiore destro dell'oggetto in cui viene applicato un oggetto |
TopLeft |
Raggio di arrotondamento, in pixel, dell'angolo superiore sinistro dell'oggetto in cui viene applicato un oggetto |
TopRight |
Raggio di arrotondamento, in pixel, dell'angolo superiore destro dell'oggetto in cui viene applicato un oggetto |