Share via


CornerRadius Estructura

Definición

Describe las características de una esquina redondeada, como se puede aplicar a un borde.

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"/>
Herencia
CornerRadius
Atributos

Ejemplos

En este ejemplo XAML se muestran varios estilos de Border con distintos valores 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>

El CÓDIGO XAML genera esta salida representada:

Salida representada del ejemplo XAML de CornerRadius

Comentarios

Notas sobre la sintaxis XAML

Aunque puede especificar como un CornerRadius elemento de objeto, no puede especificar los valores individuales, como BottomLeft atributos de ese elemento de objeto. El analizador XAML no admite el establecimiento de valores de atributo XAML para esta estructura. Por ejemplo, este XAML no funciona:

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

En su lugar, debe especificar los valores como texto de inicialización dentro de CornerRadius. El uso de la sintaxis del elemento object para es CornerRadius útil si desea declarar un recurso con clave que pueden usar varias instancias de Border para sus Border.CornerRadius. Para obtener más información sobre el texto de inicialización XAML, consulta La guía de sintaxis XAML.

Si especifica una cadena de atributo o un texto de inicialización con dos o tres valores, solo se respeta el primer valor y se trata como uniformRadius (se omiten los demás valores). Debe especificar los cuatro valores para usar un comportamiento diferente al de uniformRadius.

Puede usar un espacio en lugar de una coma como delimitador entre valores.

En este ejemplo se muestra cómo usar el texto de inicialización para establecer los valores de un CornerRadius recurso y, a continuación, aplicar el recurso a un borde.

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

Proyección y miembros de CornerRadius

Si usa un lenguaje Microsoft .NET (C# o Microsoft Visual Basic) o extensiones de componentes de Visual C++ (C++/CX), CornerRadius tiene miembros que no son de datos disponibles y sus miembros de datos se exponen como propiedades de lectura y escritura, no como campos. Consulte CornerRadius en el explorador de API de .NET.

Si está programando con C++/WinRT o con la Windows Runtime biblioteca de plantillas de C++ (C++), solo existen los campos de miembro de datos como miembros de CornerRadius y no puede usar los métodos o propiedades de la utilidad de la proyección de .NET. El código de C++ puede tener acceso a métodos de utilidad similares que existen en la clase CornerRadiusHelper .

En esta tabla se muestran los métodos equivalentes disponibles en .NET y C++.

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

Campos

BottomLeft

Radio de redondeo, en píxeles, de la esquina inferior izquierda del objeto donde se aplica .CornerRadius

BottomRight

Radio de redondeo, en píxeles, de la esquina inferior derecha del objeto donde se aplica .CornerRadius

TopLeft

Radio de redondeo, en píxeles, de la esquina superior izquierda del objeto donde se aplica .CornerRadius

TopRight

Radio de redondeo, en píxeles, de la esquina superior derecha del objeto donde se aplica .CornerRadius

Se aplica a