FrameworkElement.VerticalAlignment Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает характеристики вертикального выравнивания, применяемые к Объекту FrameworkElement при его создании в родительском объекте, например панели или элемента управления элементами.
public:
property VerticalAlignment VerticalAlignment { VerticalAlignment get(); void set(VerticalAlignment value); };
VerticalAlignment VerticalAlignment();
void VerticalAlignment(VerticalAlignment value);
public VerticalAlignment VerticalAlignment { get; set; }
var verticalAlignment = frameworkElement.verticalAlignment;
frameworkElement.verticalAlignment = verticalAlignment;
Public Property VerticalAlignment As VerticalAlignment
<frameworkElement VerticalAlignment="verticalAlignmentMemberName"/>
Значение свойства
Параметр вертикального выравнивания в виде значения перечисления. Значение по умолчанию — Stretch
.
Примеры
В этом примере значение Center
присваивается HorizontalAlignment и VerticalAlignment
для размещения элементов TextBlock в центре ячеек Grid .
<Grid x:Name="LayoutRoot" Background="Coral" Width="300" Height="100">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions>
<TextBlock Grid.Column="0" Grid.Row="0" Text="First Name"
HorizontalAlignment="Center" VerticalAlignment="Center" />
<TextBlock Grid.Column="0" Grid.Row="1" Text="Last Name"
HorizontalAlignment="Center" VerticalAlignment="Center" />
<TextBox Grid.Column="1" Grid.Row="0" />
<TextBox Grid.Column="1" Grid.Row="1" />
</Grid>
Комментарии
Свойства выравнивания предназначены для указания нужного макета для контейнера адаптивного макета. Обычно они задаются в дочерних элементах FrameworkElement и интерпретируются другим FrameworkElement
родительским контейнером (обычно это производный класс ContentControl или Класс, производный от Panel , или, возможно, выступающий). Установка свойств выравнивания для дочернего элемента не гарантирует, что что-либо произойдет; поведение зависит от композиции макета и участвующих родительских элементов.
Если свойства Height и Width явно заданы или вычисляются для объекта, эти измерения более важны для типичной логики макета и могут отменить эффекты установки значения VerticalAlignment
Stretch. Свойства ограничения макета (например , MaxHeight) также влияют на максимальный или минимальный размер макета для ситуации макета Stretch
.
Stretch
используется по умолчанию, чтобы было проще использовать адаптивные методы макета в случаях, когда нет явного измерения. Но если есть обрезка Height
и Width
или, макет действует так, как если бы значение равно Top
VerticalAlignment
, как правило Left
, для HorizontalAlignment (Right
для сведений о языке и региональных параметрах справа налево или явных значений FlowDirection ). Дополнительные сведения см. в статье Выравнивание, поле и заполнение.
Холст не используется VerticalAlignment
при создании макета, так как Canvas
основан на абсолютном расположении. Как правило, любой объект, способный иметь один или несколько объектов FrameworkElement в качестве дочернего VerticalAlignment
содержимого, потенциально обрабатывается по-разному. Каждый такой родительский объект может иметь собственную логику макета.
Каждый элемент пользовательского интерфейса XAML может применять это свойство по-разному в зависимости от наборов стилей для неявного стиля. Очевидное "значение по умолчанию" для VerticalAlignment
в каждом элементе пользовательского интерфейса может быть разным. Например, элемент управления Кнопка начинается со значения Center
. Если элемент пользовательского интерфейса является элементом управления, VerticalAlignment
значение также может повлиять на визуальный шаблон элемента управления.
В элементах управления содержимым шаблон элемента управления часто использует выражения расширения разметки {TemplateBinding} , чтобы привязать свойство VerticalContentAlignment к свойству VerticalAlignment
какого-либо элемента в шаблоне, например выступающего или элемента, используемого в качестве области содержимого.