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.
Если указать строку атрибута или текст инициализации с двумя или тремя значениями, то учитывается только первое значение и обрабатывается как однородное значениеRadius (другие значения игнорируются). Необходимо указать все четыре значения, чтобы использовать поведение, отличное от универсальногоRadius.
Пространство можно использовать вместо запятой в качестве разделителя между значениями.
В этом примере показано, как использовать текст инициализации для задания значений 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
Если вы используете C#, то CornerRadius имеет доступные элементы без данных, а его члены данных предоставляются как свойства чтения и записи, а не поля. См. раздел CornerRadius в браузере API .NET.
Если вы программируетсяе с помощью C++/WinRT или библиотекишаблонов C++ среда выполнения 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 |
Радиус округления (в пикселях) в правом верхнем углу объекта, в котором |