CornerRadius Структура
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
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"/>
- Наследование
-
CornerRadius
- Атрибуты
Примеры
В этом примере XAML показано несколько стилей Border с разными значениями 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>
Xaml создает отрисованный результат:
Комментарии
Примечания по синтаксису XAML
Хотя можно указать CornerRadius
в качестве объектного элемента, нельзя указать отдельные значения, такие как BottomLeft
атрибуты этого элемента объекта. Средство синтаксического анализа XAML не поддерживает установку значений атрибутов XAML для этой структуры. Например, этот код XAML не работает:
<!-- THIS DOES NOT WORK -->
<CornerRadius x:Key="CornerRadiusError" BottomLeft="20"/>
Вместо этого необходимо указать значения в виде текста инициализации CornerRadius
в . Использование синтаксиса объектного элемента для для полезно, CornerRadius
если требуется объявить ресурс с ключом, который может использоваться несколькими экземплярами Border для их Border.CornerRadius. Дополнительные сведения о тексте инициализации XAML см. в руководстве по синтаксису XAML.
Если указать строку атрибута или текст инициализации с двумя или тремя значениями, учитывается только первое значение и обрабатывается как uniformRadius (остальные значения игнорируются). Необходимо указать все четыре значения, чтобы использовать поведение, отличное от поведения uniformRadius.
В качестве разделителя значений можно использовать пробел, а не запятую.
В этом примере показано, как использовать текст инициализации для задания значений CornerRadius
ресурса, а затем применить ресурс к 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>
Проекция и члены CornerRadius
Если вы используете язык Microsoft .NET (C# или Microsoft Visual Basic) или расширения компонентов Visual C++ (C++/CX), cornerRadius имеет доступные элементы, не являющиеся данными, и его члены данных предоставляются как свойства чтения и записи, а не поля. См. статью CornerRadius в браузере API .NET.
При программировании с помощью C++/WinRT или среда выполнения Windows библиотеки шаблонов C++ (WRL) в качестве членов CornerRadius существуют только поля элементов данных, и вы не можете использовать служебные методы или свойства проекции .NET. Код C++ может обращаться к аналогичным служебным методам, существующим в классе CornerRadiusHelper .
В этой таблице показаны эквивалентные методы, доступные в .NET и C++.
.NET (CornerRadius) | C++ (CornerRadiusHelper) |
---|---|
CornerRadius(Double) | FromUniformRadius(Double) |
CornerRadius (Double, Double, Double, Double) | FromRadii(Double, Double, Double, Double) |
Поля
BottomLeft |
Радиус округления (в пикселях) левого нижнего угла объекта, к которому |
BottomRight |
Радиус округления (в пикселях) нижнего правого угла объекта, к которому |
TopLeft |
Радиус округления (в пикселях) верхнего левого угла объекта, к которому |
TopRight |
Радиус округления (в пикселях) верхнего правого угла объекта, к которому |