CornerRadius Estrutura
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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"/>
- Herança
-
CornerRadius
- Atributos
Exemplos
Este exemplo XAML mostra vários estilos de Borda usando valores diferentes de CornerRadius:
<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>
O XAML produz esta saída renderizada:
Comentários
Observações sobre a sintaxe XAML
Embora você possa especificar um como um CornerRadius
elemento de objeto, não é possível especificar os valores individuais, como BottomLeft
atributos desse elemento de objeto. O analisador XAML não dá suporte à definição de valores de atributo XAML para essa estrutura. Por exemplo, esse XAML não funciona:
<!-- THIS DOES NOT WORK -->
<CornerRadius x:Key="CornerRadiusError" BottomLeft="20"/>
Em vez disso, você deve especificar os valores como texto de inicialização dentro do CornerRadius
. Usar a sintaxe do elemento de objeto para um CornerRadius
será útil se você quiser declarar um recurso com chave que pode ser usado por várias instâncias border para seu Border.CornerRadius. Para obter mais informações sobre o texto de inicialização XAML, consulte Guia de sintaxe XAML.
Se você especificar uma cadeia de caracteres de atributo ou texto de inicialização com dois ou três valores, somente o primeiro valor será respeitado e será tratado como uniformRadius (os outros valores serão ignorados). Você deve especificar todos os quatro valores para usar um comportamento diferente de uniformRadius.
Você pode usar um espaço em vez de uma vírgula como o delimitador entre valores.
Este exemplo mostra como usar o texto de inicialização para definir os valores de um CornerRadius
recurso e, em seguida, aplicar o recurso a uma Borda.
<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>
Projeção e membros do CornerRadius
Se você estiver usando uma linguagem Microsoft .NET (C# ou Microsoft Visual Basic) ou extensões de componente do Visual C++ (C++/CX), o CornerRadius terá membros que não são de dados disponíveis e seus membros de dados serão expostos como propriedades de leitura/gravação, não campos. Consulte CornerRadius no Navegador de API do .NET.
Se você estiver programando com C++/WinRT ou o Windows Runtime WRL (Biblioteca de Modelos C++), somente os campos de membro de dados existirão como membros do CornerRadius e você não poderá usar os métodos ou propriedades do utilitário da projeção do .NET. O código C++ pode acessar métodos utilitários semelhantes que existem na classe CornerRadiusHelper .
Esta tabela mostra os métodos equivalentes disponíveis no .NET e no C++.
.NET (CornerRadius) | C++ (CornerRadiusHelper) |
---|---|
CornerRadius(Double) | FromUniformRadius(Double) |
CornerRadius(Double, Double, Double, Double) | FromRadii(Double, Double, Double, Double) |
Campos
BottomLeft |
O raio de arredondamento, em pixels, do canto inferior esquerdo do objeto em que um |
BottomRight |
O raio de arredondamento, em pixels, do canto inferior direito do objeto em que um |
TopLeft |
O raio de arredondamento, em pixels, do canto superior esquerdo do objeto em que um |
TopRight |
O raio de arredondamento, em pixels, do canto superior direito do objeto em que um |