Поделиться через


Grid Класс

Определение

Задание области с таблицей переменного размера, состоящей из столбцов и строк. Дочерние элементы Grid измеряются и упорядочивается в соответствии с их назначениями строк или столбцов (задается с помощью присоединенных свойств Grid.Row и Grid.Column ) и другой логики.

/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Grid : Panel
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Grid : Panel
Public Class Grid
Inherits Panel
<Grid ...>
  oneOrMoreUIElements
</Grid>
-or-
<Grid .../>
Наследование
Производный
Атрибуты

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Примеры

Совет

Дополнительные сведения, рекомендации по проектированию и примеры кода см. в разделе Панели макета.

Если у вас установлено приложение коллекции WinUI 2 , щелкните здесь, чтобы открыть приложение и увидеть сетку в действии.

В этом примере XAML показано, как спроектировать макет с помощью сетки.

<Grid x:Name="LayoutRoot" Background="#555555" Width="400" Height="300">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="250" />
        <ColumnDefinition Width="150" />
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="2*" />
        <RowDefinition Height="*"/>
    </Grid.RowDefinitions>
    <TextBlock Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" 
               Margin="10" FontWeight="Bold" 
               Text="Contoso Corporation" HorizontalAlignment="Center" VerticalAlignment="Center" />
    <Grid x:Name="FormLayoutGrid" Grid.Row="1" Grid.Column="0">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
        <TextBlock Grid.Row="0" Grid.Column="0" Text="First Name" Margin="10" 
                   HorizontalAlignment="Left" VerticalAlignment="Center" />
        <TextBox Grid.Row="0" Grid.Column="1" Margin="10" />
        <TextBlock Grid.Row="1" Grid.Column="0" Text="Last Name" Margin="10" 
                   HorizontalAlignment="Left" VerticalAlignment="Center" />
        <TextBox Grid.Row="1" Grid.Column="1" Margin="10" />
        <TextBlock Grid.Row="2" Grid.Column="0" Text="Address" Margin="10" 
                   HorizontalAlignment="Left" VerticalAlignment="Center" />
        <TextBox Grid.Row="2" Grid.Column="1" Margin="10" />
      
    </Grid>
 </Grid>
    public Page()
    {
        InitializeComponent();
        LayoutDesign();
    }

    private void LayoutDesign()
    {
        //Create Stackpanel for ListBox Control and its description
        StackPanel DeptStackPanel = new StackPanel();
        DeptStackPanel.Margin = new Thickness(10);

        LayoutRoot.Children.Add(DeptStackPanel);
        Grid.SetColumn(DeptStackPanel, 1);
        Grid.SetRow(DeptStackPanel, 1);

        TextBlock DeptListHeading = new TextBlock();
        DeptListHeading.Text = "Department";

        ListBox DeptList = new ListBox();
        DeptList.Items.Add("Finance");
        DeptList.Items.Add("Marketing");
        DeptList.Items.Add("Human Resources");
        DeptList.Items.Add("Payroll");

        DeptStackPanel.Children.Add(DeptListHeading);
        DeptStackPanel.Children.Add(DeptList);

        //Create StackPanel for buttons
        StackPanel ButtonsStackPanel = new StackPanel();
        ButtonsStackPanel.Margin = new Thickness(10);
        ButtonsStackPanel.Orientation = Orientation.Horizontal;
        ButtonsStackPanel.HorizontalAlignment = HorizontalAlignment.Center;

        LayoutRoot.Children.Add(ButtonsStackPanel);
        Grid.SetColumn(ButtonsStackPanel, 0);
        Grid.SetRow(ButtonsStackPanel, 2);
        Grid.SetColumnSpan(ButtonsStackPanel, 2);

        Button BackButton = new Button();
        BackButton.Content = "Back";
        BackButton.Width = 100;

        Button CancelButton = new Button();
        CancelButton.Content = "Cancel";
        CancelButton.Width = 100;

        Button NextButton = new Button();
        NextButton.Content = "Next";
        NextButton.Width = 100;

        ButtonsStackPanel.Children.Add(BackButton);
        ButtonsStackPanel.Children.Add(CancelButton);
        ButtonsStackPanel.Children.Add(NextButton);

        BackButton.Margin = new Thickness(10);
        CancelButton.Margin = new Thickness(10);
        NextButton.Margin = new Thickness(10);
    }
}
Partial Public Class Page
    Inherits UserControl

    Public Sub New()
        InitializeComponent()
        LayoutDesign()
    End Sub

    Private Sub LayoutDesign()
        'Create Stackpanel for ListBox Control and its description 
        Dim DeptStackPanel As New StackPanel()
        DeptStackPanel.Margin = New Thickness(10)

        LayoutRoot.Children.Add(DeptStackPanel)
        Grid.SetColumn(DeptStackPanel, 1)
        Grid.SetRow(DeptStackPanel, 1)

        Dim DeptListHeading As New TextBlock()
        DeptListHeading.Text = "Department"

        Dim DeptList As New ListBox()
        DeptList.Items.Add("Finance")
        DeptList.Items.Add("Marketing")
        DeptList.Items.Add("Human Resources")
        DeptList.Items.Add("Payroll")

        DeptStackPanel.Children.Add(DeptListHeading)
        DeptStackPanel.Children.Add(DeptList)

        'Create StackPanel for buttons 
        Dim ButtonsStackPanel As New StackPanel()
        ButtonsStackPanel.Margin = New Thickness(10)
        ButtonsStackPanel.Orientation = Orientation.Horizontal
        ButtonsStackPanel.HorizontalAlignment = HorizontalAlignment.Center

        LayoutRoot.Children.Add(ButtonsStackPanel)
        Grid.SetColumn(ButtonsStackPanel, 0)
        Grid.SetRow(ButtonsStackPanel, 2)
        Grid.SetColumnSpan(ButtonsStackPanel, 2)

        Dim BackButton As New Button()
        BackButton.Content = "Back"
        BackButton.Height = 30
        BackButton.Width = 100

        Dim CancelButton As New Button()
        CancelButton.Content = "Cancel"
        CancelButton.Height = 30
        CancelButton.Width = 100

        Dim NextButton As New Button()
        NextButton.Content = "Next"
        NextButton.Height = 30
        NextButton.Width = 100

        ButtonsStackPanel.Children.Add(BackButton)
        ButtonsStackPanel.Children.Add(CancelButton)
        ButtonsStackPanel.Children.Add(NextButton)

        BackButton.Margin = New Thickness(10)
        CancelButton.Margin = New Thickness(10)
        NextButton.Margin = New Thickness(10)
    End Sub
End Class

Комментарии

Совет

Дополнительные сведения, рекомендации по проектированию и примеры кода см. в разделе Панели макета.

Сетка — это панель макета, которая поддерживает размещение дочерних элементов в строках и столбцах.

Панель макета

Обычно поведение макета для Grid в XAML определяется путем предоставления одного или нескольких элементов RowDefinition в качестве значения Grid.RowDefinitions и одного или нескольких элементов ColumnDefinitions в качестве значения Grid.ColumnDefinitions. Затем примените присоединенные свойства Grid.Row и Grid.Column к каждому из дочерних элементов Grid, чтобы указать, какое сочетание строки и столбца используется для размещения этого элемента в родительском элементе Grid.

Чтобы задать высоту строк и ширину столбцов, задайте RowDefinition.Height для каждого rowDefinition и ColumnDefinition.Width для каждого columnDefinition. По умолчанию каждая строка или столбец разделяет пространство макета поровну. Это поведение можно изменить, указав абсолютные значения пикселей или размер star , который делит доступное пространство с помощью взвешиваемого коэффициента. Дополнительные сведения о том, как использовать размер Star в Grid, см. в статье Определение макетов с помощью XAML или GridLength. Вы также можете использовать автоматическое изменение размера, которое определяет размер содержимого.

Чтобы указать, что дочерний элемент должен охватывать несколько строк или столбцов в Grid, можно применить присоединенные свойства Grid.RowSpan или Grid.ColumnSpan к дочерним элементам Элемента Grid.

По умолчанию элемент Grid содержит одну строку и один столбец.

Задание свойства Margin для дочерних элементов в элементе Grid задает расстояние между элементом и его границами ячеек сетки. Свойства HorizontalAlignment и VerticalAlignment описывают расположение дочернего элемента в ячейке сетки. Можно точно расположить дочерние элементы элемента Grid с помощью сочетания свойств Margin и выравнивания. Если вам нужен еще больший контроль над макетом отдельных дочерних элементов, рассмотрите возможность использования VariableSizedWrapGrid.

WrapGrid — это еще одна аналогичная панель макета, которая имеет преимущество лучшей обработки слишком широкого содержимого, которое может обрезаться обычным элементом Grid в зависимости от значений других свойств макета.

Элемент в первом столбце, охватывающий несколько строк, может повлиять на высоту каждой развернутой строки, даже если высота первой строки достаточна для размещения элемента, а последующие составные строки в противном случае имели бы высоту 0. Например, вторая строка в этой сетке имеет высоту 0, поэтому синий прямоугольник обычно не отображается. В этом случае можно ожидать, что красный эллипс не повлияет на вторую строку, так как первая строка достаточно высока для размещения эллипса. Однако сетка вычисляет Значение MinHeight каждой строки, достаточное для размещения красного эллипса, а затем охватывает элемент по строкам. В результате второй строке присваивается значение MinHeight 50, красный эллипс находится по центру в диапазоне 150 пикселей, а половина синего прямоугольника отображается во второй строке.

Примечание

(В этом примере используется элемент, охватывающий столбцы, но также применяется к элементу в первом столбце, который охватывает несколько строк.)

<Grid Background="Yellow" Width="300">
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="50"/>
        <ColumnDefinition Width="*"/>
    </Grid.ColumnDefinitions>
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="0"/>
    </Grid.RowDefinitions>
    <Ellipse   Grid.Row="0" Grid.Column="0"  Height="50" Fill="Red" Grid.RowSpan="2"/>
    <Rectangle Grid.Row="0" Grid.Column="1" Fill="Green" Height="100"/>
    <Rectangle Grid.Row="1" Grid.Column="1" Fill="Blue" Height="100"/>
</Grid>

Свойства границы

Grid определяет свойства границы, которые позволяют рисовать границу вокруг grid без использования дополнительного элемента Border . К свойствам относятся Grid.BorderBrush, Grid.BorderThickness, Grid.CornerRadius и Grid.Padding.

<Grid BorderBrush="Red" BorderThickness="2" CornerRadius="10" Padding="12">
    <TextBlock Text="Hello World!"/>
</Grid>

Присоединенные свойства XAML

Grid — это класс службы узла для нескольких присоединенных свойств XAML. Эти присоединенные свойства позволяют дочерним элементам сообщать о том, как они должны размещаться в родительском элементе Grid.

Для поддержки доступа обработчика XAML к присоединенным свойствам, а также для предоставления коду эквивалентных операций получения и задания , каждое присоединенное свойство XAML имеет пару методов доступа Get и Set. Другой способ получить или задать значение в коде — использовать систему свойств зависимостей, вызывая метод GetValue или SetValue и передавая поле идентификатора в качестве идентификатора свойства зависимостей.

Присоединенное свойство Описание
Столбец Возвращает или задает выравнивание столбцов элемента при обработке дочернего макета родительским контейнером макета Сетки.
ColumnSpan Возвращает или задает значение, указывающее общее количество столбцов, охватываемых содержимым элемента в родительской сетке.
Строка Возвращает или задает выравнивание строк элемента при обработке дочернего макета родительским контейнером макета Сетка.
RowSpan Возвращает или задает значение, указывающее общее количество строк, охватываемых содержимым элемента в родительской сетке.

Журнал версий

Версия Windows Версия пакета SDK Добавленная стоимость
1709 16299 ColumnSpacing
1709 16299 RowSpacing
1809 17763 BackgroundSizing

Конструкторы

Grid()

Инициализирует новый экземпляр класса Grid .

Свойства

AccessKey

Возвращает или задает ключ доступа (мнемонический) для этого элемента.

(Унаследовано от UIElement)
AccessKeyScopeOwner

Возвращает или задает исходный элемент, предоставляющий ключ доступа область для этого элемента, даже если он не находится в визуальном дереве исходного элемента.

(Унаследовано от UIElement)
ActualHeight

Возвращает отрисованную высоту объекта FrameworkElement. См. заметки.

(Унаследовано от FrameworkElement)
ActualOffset

Возвращает положение этого элемента UIElement относительно его родительского элемента, вычисленное во время прохода упорядочения процесса макета.

(Унаследовано от UIElement)
ActualSize

Возвращает размер, вычисленный этим элементом UIElement во время упорядочения процесса макета.

(Унаследовано от UIElement)
ActualTheme

Возвращает тему пользовательского интерфейса, которая в настоящее время используется элементом , который может отличаться от RequestedTheme.

(Унаследовано от FrameworkElement)
ActualWidth

Возвращает отрисованную ширину элемента FrameworkElement. См. заметки.

(Унаследовано от FrameworkElement)
AllowDrop

Возвращает или задает значение, определяющее, может ли этот элемент UIElement быть целевым объектом перетаскивания для операций перетаскивания.

(Унаследовано от UIElement)
AllowFocusOnInteraction

Возвращает или задает значение, указывающее, получает ли элемент фокус автоматически, когда пользователь взаимодействует с ним.

(Унаследовано от FrameworkElement)
AllowFocusWhenDisabled

Возвращает или задает значение, указывающее, может ли отключенный элемент управления получать фокус.

(Унаследовано от FrameworkElement)
Background

Возвращает или задает кисть , заполняющую область содержимого панели.

(Унаследовано от Panel)
BackgroundSizing

Возвращает или задает значение, указывающее, насколько далеко расширяется фон относительно границы этого элемента.

BackgroundSizingProperty

Определяет свойство зависимостей BackgroundSizing.

BackgroundTransition

Возвращает или задает экземпляр BrushTransition для автоматической анимации изменений свойства Background.

(Унаследовано от Panel)
BaseUri

Возвращает универсальный код ресурса (URI), представляющий базовый универсальный код ресурса (URI) для созданного в XAML объекта во время загрузки XAML. Это свойство полезно для разрешения универсального кода ресурса (URI) во время выполнения.

(Унаследовано от FrameworkElement)
BorderBrush

Возвращает или задает кисть, описывающую заливку границы панели.

BorderBrushProperty

Определяет свойство зависимостей BorderBrush .

BorderThickness

Возвращает или задает толщину границы панели.

BorderThicknessProperty

Определяет свойство зависимостей BorderThickness .

CacheMode

Возвращает или задает значение, указывающее, что отображаемое содержимое должно кэшироваться в виде составного растрового изображения, если это возможно.

(Унаследовано от UIElement)
CanBeScrollAnchor

Возвращает или задает значение, указывающее, может ли UIElement быть кандидатом для привязки прокрутки.

(Унаследовано от UIElement)
CanDrag

Возвращает или задает значение, указывающее, можно ли перетаскивать элемент как данные в операции перетаскивания.

(Унаследовано от UIElement)
CenterPoint

Возвращает или задает центральную точку элемента, то есть точку, о которой происходит поворот или масштабирование. Влияет на позицию отрисовки элемента.

(Унаследовано от UIElement)
Children

Возвращает коллекцию дочерних элементов панели.

(Унаследовано от Panel)
ChildrenTransitions

Возвращает или задает коллекцию элементов стиля перехода , которые применяются к дочернему содержимому подкласса Panel .

(Унаследовано от Panel)
Clip

Возвращает или задает объект RectangleGeometry, используемый для определения структуры содержимого элемента UIElement.

(Унаследовано от UIElement)
ColumnDefinitions

Возвращает список объектов ColumnDefinition , определенных в этом экземпляре Grid.

ColumnProperty

Определяет присоединенное свойство XAML Grid.Column .

ColumnSpacing

Возвращает или задает равномерное расстояние (в пикселях) между столбцами сетки.

ColumnSpacingProperty

Определяет свойство зависимостей ColumnSpacing.

ColumnSpanProperty

Определяет присоединенное свойство XAML Grid.ColumnSpan .

CompositeMode

Возвращает или задает свойство, объявляющее альтернативные режимы композиции и наложения для элемента в родительском макете и окне. Это относится к элементам, участвующим в смешанном пользовательском интерфейсе XAML/Microsoft DirectX.

(Унаследовано от UIElement)
ContextFlyout

Возвращает или задает всплывающий элемент, связанный с этим элементом.

(Унаследовано от UIElement)
CornerRadius

Возвращает или задает радиус для углов границы панели.

CornerRadiusProperty

Определяет свойство зависимостей CornerRadius .

DataContext

Возвращает или задает контекст данных для FrameworkElement. Контекст данных часто используется, когда FrameworkElement использует расширение разметки {Binding} и участвует в привязке данных.

(Унаследовано от FrameworkElement)
DesiredSize

Возвращает размер, вычисленный этим элементом UIElement во время прохождения меры процесса макета.

(Унаследовано от UIElement)
Dispatcher

Возвращает объект CoreDispatcher , с которым связан этот объект. CoreDispatcher представляет собой средство, которое может получить доступ к DependencyObject в потоке пользовательского интерфейса, даже если код инициируется потоком, не относящегося к пользовательскому интерфейсу.

(Унаследовано от DependencyObject)
ExitDisplayModeOnAccessKeyInvoked

Возвращает или задает значение, указывающее, закрывается ли отображение ключа доступа при вызове ключа доступа.

(Унаследовано от UIElement)
FlowDirection

Возвращает или задает направление, в котором текст и другие элементы пользовательского интерфейса передаются в любом родительском элементе, который управляет их макетом. Этому свойству можно присвоить значение LeftToRight или RightToLeft. Для параметра FlowDirection значение RightToLeft для любого элемента устанавливается выравнивание справа, порядок чтения справа налево и макет элемента управления для перехода справа налево.

(Унаследовано от FrameworkElement)
FocusVisualMargin

Возвращает или задает внешнее поле визуального элемента фокуса для FrameworkElement.

(Унаследовано от FrameworkElement)
FocusVisualPrimaryBrush

Возвращает или задает кисть, используемую для рисования внешней границы визуального HighVisibility элемента или Reveal фокуса для FrameworkElement.

(Унаследовано от FrameworkElement)
FocusVisualPrimaryThickness

Возвращает или задает толщину внешней границы визуального элемента или Reveal фокуса HighVisibility для FrameworkElement.

(Унаследовано от FrameworkElement)
FocusVisualSecondaryBrush

Получает или задает кисть, используемую для рисования внутренней границы визуального HighVisibility элемента или Reveal фокуса для FrameworkElement.

(Унаследовано от FrameworkElement)
FocusVisualSecondaryThickness

Возвращает или задает толщину внутренней границы визуального HighVisibility элемента или Reveal фокуса для FrameworkElement.

(Унаследовано от FrameworkElement)
Height

Возвращает или задает предполагаемую высоту объекта FrameworkElement.

(Унаследовано от FrameworkElement)
HighContrastAdjustment

Возвращает или задает значение, указывающее, настраивает ли платформа автоматически визуальные свойства элемента при включении тем с высокой контрастностью.

(Унаследовано от UIElement)
HorizontalAlignment

Возвращает или задает характеристики горизонтального выравнивания, применяемые к Объекту FrameworkElement при его создании в родительском элементе макета, например в элементе управления "Панель" или "Элементы".

(Унаследовано от FrameworkElement)
IsAccessKeyScope

Возвращает или задает значение, указывающее, определяет ли элемент собственный ключ доступа область.

(Унаследовано от UIElement)
IsDoubleTapEnabled

Возвращает или задает значение, определяющее, может ли событие DoubleTapped исходить из этого элемента.

(Унаследовано от UIElement)
IsHitTestVisible

Возвращает или задает значение, указывающее, может ли автономная область этого элемента UIElement возвращать истинные значения для проверки попадания.

(Унаследовано от UIElement)
IsHoldingEnabled

Возвращает или задает значение, определяющее, может ли событие Holding исходить из этого элемента.

(Унаследовано от UIElement)
IsItemsHost

Возвращает значение, указывающее, является ли эта панель контейнером для элементов пользовательского интерфейса, созданных ItemsControl.

(Унаследовано от Panel)
IsLoaded

Возвращает значение, указывающее, был ли элемент добавлен в дерево элементов и готов ли он к взаимодействию.

(Унаследовано от FrameworkElement)
IsRightTapEnabled

Возвращает или задает значение, определяющее, может ли событие RightTapped исходить из этого элемента.

(Унаследовано от UIElement)
IsTapEnabled

Возвращает или задает значение, определяющее, может ли событие Tapped исходить из этого элемента.

(Унаследовано от UIElement)
KeyboardAcceleratorPlacementMode

Возвращает или задает значение, указывающее , отображает ли подсказка элемента управления сочетание клавиш для связанного ускорителя клавиатуры.

(Унаследовано от UIElement)
KeyboardAcceleratorPlacementTarget

Возвращает или задает значение, указывающее подсказку элемента управления, отображающую сочетание клавиш ускорителя.

(Унаследовано от UIElement)
KeyboardAccelerators

Возвращает коллекцию сочетаний клавиш, вызывающих действие с помощью клавиатуры.

Ускорители обычно назначаются кнопкам или пунктам меню.

Пример меню с ускорителями клавиатуры для различных пунктов меню
Пример меню с ускорителями клавиатуры для различных пунктов меню

(Унаследовано от UIElement)
KeyTipHorizontalOffset

Возвращает или задает значение, указывающее, насколько далеко слева или справа находится подсказка клавиши по отношению к UIElement.

(Унаследовано от UIElement)
KeyTipPlacementMode

Возвращает или задает значение, указывающее, где находится подсказка клавиши доступа относительно границы UIElement.

(Унаследовано от UIElement)
KeyTipTarget

Возвращает или задает значение, указывающее элемент, на который нацелена подсказка ключа доступа.

(Унаследовано от UIElement)
KeyTipVerticalOffset

Возвращает или задает значение, указывающее, насколько далеко находится подсказка клавиши по отношению к элементу пользовательского интерфейса.

(Унаследовано от UIElement)
Language

Возвращает или задает сведения о языке локализации и глобализации, которые применяются к Объекту FrameworkElement, а также ко всем дочерним элементам текущего FrameworkElement в представлении объекта и в пользовательском интерфейсе.

(Унаследовано от FrameworkElement)
Lights

Возвращает коллекцию объектов XamlLight, присоединенных к этому элементу.

(Унаследовано от UIElement)
ManipulationMode

Возвращает или задает значение ManipulationModes, используемое для поведения UIElement и взаимодействия с жестами. Задание этого значения позволяет обрабатывать события манипуляции из этого элемента в коде приложения.

(Унаследовано от UIElement)
Margin

Возвращает или задает внешнее поле объекта FrameworkElement.

(Унаследовано от FrameworkElement)
MaxHeight

Возвращает или задает ограничение максимальной высоты объекта FrameworkElement.

(Унаследовано от FrameworkElement)
MaxWidth

Возвращает или задает ограничение максимальной ширины объекта FrameworkElement.

(Унаследовано от FrameworkElement)
MinHeight

Возвращает или задает ограничение минимальной высоты объекта FrameworkElement.

(Унаследовано от FrameworkElement)
MinWidth

Возвращает или задает ограничение минимальной ширины элемента FrameworkElement.

(Унаследовано от FrameworkElement)
Name

Возвращает или задает идентифицирующие имя объекта. Когда обработчик XAML создает дерево объектов из разметки XAML, код времени выполнения может ссылаться на объект, объявленный XAML, по этому имени.

(Унаследовано от FrameworkElement)
Opacity

Возвращает или задает степень непрозрачности объекта.

(Унаследовано от UIElement)
OpacityTransition

Возвращает или задает scalarTransition, который анимирует изменения в свойстве Opacity.

(Унаследовано от UIElement)
Padding

Возвращает или задает расстояние между границей и ее дочерним объектом.

PaddingProperty

Идентифицирует свойство зависимости Padding .

Parent

Возвращает родительский объект этого объекта FrameworkElement в дереве объектов.

(Унаследовано от FrameworkElement)
PointerCaptures

Возвращает набор всех захваченных указателей, представленных в виде значений указателя .

(Унаследовано от UIElement)
Projection

Возвращает или задает перспективную проекцию (трехмерный эффект), применяемую при отрисовке этого элемента.

(Унаследовано от UIElement)
RenderSize

Возвращает окончательный размер отрисовки элемента UIElement. Использовать не рекомендуется, см. примечания.

(Унаследовано от UIElement)
RenderTransform

Возвращает или задает сведения о преобразовании, влияющие на положение отрисовки элемента UIElement.

(Унаследовано от UIElement)
RenderTransformOrigin

Возвращает или задает исходную точку любого возможного преобразования отрисовки, объявленного RenderTransform, относительно границ UIElement.

(Унаследовано от UIElement)
RequestedTheme

Возвращает или задает тему пользовательского интерфейса, используемую uiElement (и его дочерними элементами) для определения ресурса. Тема пользовательского интерфейса, указанная в параметре RequestedTheme, может переопределить requestedTheme на уровне приложения.

(Унаследовано от FrameworkElement)
Resources

Возвращает локально определенный словарь ресурсов. В XAML элементы ресурсов можно установить в качестве дочерних элементов объекта элемента свойства с помощью синтаксиса frameworkElement.Resources неявной коллекции XAML.

(Унаследовано от FrameworkElement)
Rotation

Возвращает или задает угол поворота по часовой стрелке в градусах. Поворачивается относительно RotationAxis и CenterPoint. Влияет на позицию отрисовки элемента.

(Унаследовано от UIElement)
RotationAxis

Возвращает или задает ось для поворота элемента вокруг.

(Унаследовано от UIElement)
RotationTransition

Возвращает или задает scalarTransition, который анимирует изменения в свойстве Rotation.

(Унаследовано от UIElement)
RowDefinitions

Возвращает список объектов RowDefinition , определенных в этом экземпляре Grid.

RowProperty

Определяет присоединенное свойство XAML Grid.Row .

RowSpacing

Возвращает или задает равномерное расстояние (в пикселях) между строками сетки.

RowSpacingProperty

Определяет свойство зависимостей RowSpacing.

RowSpanProperty

Определяет присоединенное свойство XAML Grid.RowSpan .

Scale

Возвращает или задает масштаб элемента. Масштабируется относительно элемента CenterPoint. Влияет на позицию отрисовки элемента.

(Унаследовано от UIElement)
ScaleTransition

Возвращает или задает объект Vector3Transition, который анимирует изменения в свойстве Scale.

(Унаследовано от UIElement)
Shadow

Возвращает или задает эффект тени, отбрасываемый элементом .

(Унаследовано от UIElement)
Style

Возвращает или задает стиль экземпляра, который применяется к этому объекту во время макета и отрисовки.

(Унаследовано от FrameworkElement)
TabFocusNavigation

Возвращает или задает значение, изменяющее работу tabbing и TabIndex для этого элемента управления.

(Унаследовано от UIElement)
Tag

Возвращает или задает произвольное значение объекта, которое можно использовать для хранения пользовательских сведений об этом объекте.

(Унаследовано от FrameworkElement)
Transform3D

Возвращает или задает эффект трехмерного преобразования, применяемый при отрисовке этого элемента.

(Унаследовано от UIElement)
TransformMatrix

Возвращает или задает матрицу преобразования, применяемую к элементу .

(Унаследовано от UIElement)
Transitions

Возвращает или задает коллекцию элементов стиля Перехода , которые применяются к UIElement.

(Унаследовано от UIElement)
Translation

Возвращает или задает позицию отрисовки x, y и z элемента.

(Унаследовано от UIElement)
TranslationTransition

Возвращает или задает объект Vector3Transition, который анимирует изменения в свойстве Translation.

(Унаследовано от UIElement)
Triggers

Возвращает коллекцию триггеров для анимаций, определенных для FrameworkElement. Не часто используется. См. заметки.

(Унаследовано от FrameworkElement)
UIContext

Возвращает идентификатор контекста для элемента .

(Унаследовано от UIElement)
UseLayoutRounding

Возвращает или задает значение, определяющее, должна ли отрисовка объекта и его визуального поддереви использовать поведение округления, которое выравнивает отрисовку по целым пикселям.

(Унаследовано от UIElement)
VerticalAlignment

Возвращает или задает характеристики вертикального выравнивания, применяемые к Объекту FrameworkElement при его создании в родительском объекте, например панели или элемента управления элементами.

(Унаследовано от FrameworkElement)
Visibility

Возвращает или задает видимость uiElement. Невидимый элемент UIElement не отображается и не передает нужный размер макету.

(Унаследовано от UIElement)
Width

Возвращает или задает ширину элемента FrameworkElement.

(Унаследовано от FrameworkElement)
XamlRoot

Возвращает или задает объект , XamlRoot в котором просматривается данный элемент.

(Унаследовано от UIElement)
XYFocusDownNavigationStrategy

Возвращает или задает значение, указывающее стратегию, используемую для определения целевого элемента навигации вниз.

(Унаследовано от UIElement)
XYFocusKeyboardNavigation

Возвращает или задает значение, которое включает или отключает навигацию с помощью стрелки направления клавиатуры.

(Унаследовано от UIElement)
XYFocusLeftNavigationStrategy

Возвращает или задает значение, указывающее стратегию, используемую для определения целевого элемента левой навигации.

(Унаследовано от UIElement)
XYFocusRightNavigationStrategy

Возвращает или задает значение, указывающее стратегию, используемую для определения целевого элемента правильной навигации.

(Унаследовано от UIElement)
XYFocusUpNavigationStrategy

Возвращает или задает значение, указывающее стратегию, используемую для определения целевого элемента навигации вверх.

(Унаследовано от UIElement)

Присоединенные свойства

Column

Возвращает или задает выравнивание столбцов элемента при обработке дочернего макета родительским контейнером макета Сетки.

ColumnSpan

Возвращает или задает значение, указывающее общее количество столбцов, охватываемых содержимым элемента в родительской сетке.

Row

Возвращает или задает выравнивание строк элемента при обработке дочернего макета родительским контейнером макета Сетка.

RowSpan

Возвращает или задает значение, указывающее общее количество строк, охватываемых содержимым элемента в родительской сетке.

Методы

AddHandler(RoutedEvent, Object, Boolean)

Добавляет обработчик перенаправленного события для указанного перенаправленного события, помещая этот обработчик в коллекцию обработчиков текущего элемента. Укажите значение handledEventsTooкак true , чтобы вызвать предоставленный обработчик, даже если событие обрабатывается в другом месте.

(Унаследовано от UIElement)
Arrange(Rect)

Размещает дочерние объекты и определяет размер элемента UIElement. Родительские объекты, реализующие пользовательский макет для своих дочерних элементов, должны вызывать этот метод из реализаций переопределения макета, чтобы сформировать рекурсивное обновление макета.

(Унаследовано от UIElement)
ArrangeOverride(Size)

Предоставляет поведение для прохода "Упорядочить" макета. Классы могут переопределить этот метод, чтобы определить собственное поведение передачи "Упорядочить".

(Унаследовано от FrameworkElement)
CancelDirectManipulations()

Отменяет текущую обработку прямых манипуляций (системное сдвига или масштабирование) в любом родительском элементе ScrollViewer , содержающем текущий элемент UIElement.

(Унаследовано от UIElement)
CapturePointer(Pointer)

Задает запись указателя на элемент UIElement. После захвата только элемент, имеющий запись, будет запускать события, связанные с указателем.

(Унаследовано от UIElement)
ClearValue(DependencyProperty)

Очищает локальное значение свойства зависимостей.

(Унаследовано от DependencyObject)
FindName(String)

Извлекает объект с указанным именем идентификатора.

(Унаследовано от FrameworkElement)
FindSubElementsForTouchTargeting(Point, Rect)

Позволяет подклассу UIElement предоставлять дочерние элементы, помогающие разрешать сенсорный нацеливание.

(Унаследовано от UIElement)
GetAnimationBaseValue(DependencyProperty)

Возвращает любое базовое значение, установленное для свойства зависимостей, которое применяется в случаях, когда анимация не активна.

(Унаследовано от DependencyObject)
GetBindingExpression(DependencyProperty)

Возвращает bindingExpression , представляющее привязку к указанному свойству.

(Унаследовано от FrameworkElement)
GetChildrenInTabFocusOrder()

Позволяет подклассу UIElement предоставлять дочерние элементы, которые участвуют в фокусе tab.

(Унаследовано от UIElement)
GetColumn(FrameworkElement)

Возвращает значение присоединенного свойства XAML Grid.Column из указанного элемента FrameworkElement.

GetColumnSpan(FrameworkElement)

Возвращает значение присоединенного свойства XAML Grid.ColumnSpan из указанного элемента FrameworkElement.

GetRow(FrameworkElement)

Возвращает значение присоединенного свойства XAML Grid.Row из указанного элемента FrameworkElement.

GetRowSpan(FrameworkElement)

Возвращает значение присоединенного свойства XAML Grid.RowSpan из указанного элемента FrameworkElement.

GetValue(DependencyProperty)

Возвращает текущее действующее значение свойства зависимостей из DependencyObject.

(Унаследовано от DependencyObject)
GoToElementStateCore(String, Boolean)

При реализации в производном классе позволяет создавать визуальное дерево для шаблона элемента управления в коде, а не загружать XAML для всех состояний при запуске элемента управления.

(Унаследовано от FrameworkElement)
InvalidateArrange()

Делает недействительным состояние упорядочения (макет) для UIElement. После недействительности макет UIElement будет обновлен, что будет происходить асинхронно.

(Унаследовано от UIElement)
InvalidateMeasure()

Делает недействительным состояние измерения (макет) для UIElement.

(Унаследовано от UIElement)
InvalidateViewport()

Делает недействительным состояние окна просмотра для UIElement , используемого для вычисления действующего окна просмотра.

(Унаследовано от FrameworkElement)
Measure(Size)

Обновления DesiredSizeэлемента UIElement. Как правило, объекты, реализующие пользовательский макет для своих дочерних элементов макета, вызывают этот метод из собственных реализаций MeasureOverride для формирования рекурсивного обновления макета.

(Унаследовано от UIElement)
MeasureOverride(Size)

Обеспечивает поведение для прохода "Measure" цикла макета. Классы могут переопределить этот метод, чтобы определить собственное поведение передачи "Measure".

(Унаследовано от FrameworkElement)
OnApplyTemplate()

Вызывается всякий раз, когда код приложения или внутренние процессы (такие как перестроение передачи макета) вызывают Метод ApplyTemplate. Проще говоря, это означает, что метод вызывается непосредственно перед отображением элемента пользовательского интерфейса в приложении. Переопределите этот метод, чтобы повлиять на логику post-template по умолчанию класса.

(Унаследовано от FrameworkElement)
OnBringIntoViewRequested(BringIntoViewRequestedEventArgs)

Вызывается перед событием BringIntoViewRequested .

(Унаследовано от UIElement)
OnCreateAutomationPeer()

При реализации в производном классе возвращает реализации AutomationPeer для конкретного класса для инфраструктуры Microsoft модель автоматизации пользовательского интерфейса.

(Унаследовано от UIElement)
OnDisconnectVisualChildren()

Переопределите этот метод, чтобы реализовать поведение макета и логики при удалении элементов из свойства содержимого или дочерних элементов класса.

(Унаследовано от UIElement)
OnKeyboardAcceleratorInvoked(KeyboardAcceleratorInvokedEventArgs)

Вызывается при обработке сочетания клавиш (или ускорителя) в приложении. Переопределите этот метод для обработки реакции приложения на вызов ускорителя клавиатуры.

(Унаследовано от UIElement)
OnProcessKeyboardAccelerators(ProcessKeyboardAcceleratorEventArgs)

Вызывается непосредственно перед обработкой сочетания клавиш (или ускорителя) в приложении. Вызывается всякий раз, когда код приложения или внутренние процессы вызывают ProcessKeyboardAccelerators. Переопределите этот метод, чтобы повлиять на обработку ускорителя по умолчанию.

(Унаследовано от UIElement)
PopulatePropertyInfo(String, AnimationPropertyInfo)

Определяет свойство, которое можно анимировать.

(Унаследовано от UIElement)
PopulatePropertyInfoOverride(String, AnimationPropertyInfo)

При переопределении в производном классе определяет свойство, которое можно анимировать.

(Унаследовано от UIElement)
ReadLocalValue(DependencyProperty)

Возвращает локальное значение свойства зависимостей, если задано локальное значение.

(Унаследовано от DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Регистрирует функцию уведомления для прослушивания изменений определенного DependencyProperty в этом экземпляре DependencyObject .

(Унаследовано от DependencyObject)
ReleasePointerCapture(Pointer)

Освобождает записи указателя для захвата одного конкретного указателя этим элементом UIElement.

(Унаследовано от UIElement)
ReleasePointerCaptures()

Освобождает все записи указателей, хранящиеся этим элементом.

(Унаследовано от UIElement)
RemoveHandler(RoutedEvent, Object)

Удаляет указанный обработчик перенаправленных событий из этого элемента UIElement. Как правило, рассматриваемый обработчик был добавлен с помощью AddHandler.

(Унаследовано от UIElement)
SetBinding(DependencyProperty, BindingBase)

Присоединяет привязку к Объекту FrameworkElement с помощью предоставленного объекта привязки.

(Унаследовано от FrameworkElement)
SetColumn(FrameworkElement, Int32)

Задает значение присоединенного свойства XAML Grid.Column для указанного FrameworkElement.

SetColumnSpan(FrameworkElement, Int32)

Задает значение присоединенного свойства XAML Grid.ColumnSpan в указанном FrameworkElement.

SetRow(FrameworkElement, Int32)

Задает значение присоединенного свойства XAML Grid.Row в указанном FrameworkElement.

SetRowSpan(FrameworkElement, Int32)

Задает значение присоединенного свойства XAML Grid.RowSpan для указанного FrameworkElement.

SetValue(DependencyProperty, Object)

Задает локальное значение свойства зависимостей для Объекта DependencyObject.

(Унаследовано от DependencyObject)
StartAnimation(ICompositionAnimationBase)

Начинает указанную анимацию в элементе .

(Унаследовано от UIElement)
StartBringIntoView()

Инициирует запрос к платформе XAML, чтобы отобразить элемент в любых прокручиваемых регионах, в которые он содержится.

(Унаследовано от UIElement)
StartBringIntoView(BringIntoViewOptions)

Инициирует запрос к платформе XAML для вывода элемента в представление с помощью указанных параметров.

(Унаследовано от UIElement)
StartDragAsync(PointerPoint)

Инициирует операцию перетаскивания.

(Унаследовано от UIElement)
StopAnimation(ICompositionAnimationBase)

Останавливает указанную анимацию в элементе .

(Унаследовано от UIElement)
TransformToVisual(UIElement)

Возвращает объект преобразования, который можно использовать для преобразования координат из UIElement в указанный объект.

(Унаследовано от UIElement)
TryInvokeKeyboardAccelerator(ProcessKeyboardAcceleratorEventArgs)

Пытается вызвать сочетание клавиш (или ускоритель), выполнив поиск сочетания клавиш во всем визуальном дереве UIElement.

(Унаследовано от UIElement)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Отменяет уведомление об изменениях, которое было ранее зарегистрировано путем вызова Метода RegisterPropertyChangedCallback.

(Унаследовано от DependencyObject)
UpdateLayout()

Обеспечивает правильное обновление всех позиций дочерних объектов элемента UIElement для макета.

(Унаследовано от UIElement)

События

AccessKeyDisplayDismissed

Происходит, когда ключи доступа больше не должны отображаться.

(Унаследовано от UIElement)
AccessKeyDisplayRequested

Происходит, когда пользователь запрашивает отображение ключей доступа.

(Унаследовано от UIElement)
AccessKeyInvoked

Происходит, когда пользователь завершает последовательность ключей доступа.

(Унаследовано от UIElement)
ActualThemeChanged

Происходит при изменении значения свойства ActualTheme.

(Унаследовано от FrameworkElement)
BringIntoViewRequested

Происходит при вызове StartBringIntoView для этого элемента или одного из его потомков.

(Унаследовано от UIElement)
CharacterReceived

Происходит при получении одного составного символа входной очередью.

(Унаследовано от UIElement)
ContextCanceled

Происходит, когда жест ввода контекста переходит в жест манипуляции, чтобы уведомить элемент о том, что всплывающий элемент контекста не должен открываться.

(Унаследовано от UIElement)
ContextRequested

Происходит, когда пользователь завершил жест ввода контекста, например щелчок правой кнопкой мыши.

(Унаследовано от UIElement)
DataContextChanged

Происходит при изменении значения свойства FrameworkElement.DataContext .

(Унаследовано от FrameworkElement)
DoubleTapped

Возникает при необработанных взаимодействиях DoubleTap с областью проверки попадания этого элемента.

(Унаследовано от UIElement)
DragEnter

Происходит, когда входная система сообщает базовое событие перетаскивания с этим элементом в качестве целевого объекта.

(Унаследовано от UIElement)
DragLeave

Происходит, когда входная система сообщает базовое событие перетаскивания с этим элементом в качестве источника.

(Унаследовано от UIElement)
DragOver

Происходит, когда подсистема ввода сообщает о соответствующем событии перетаскивания, имеющем в качестве потенциальной цели данный элемент.

(Унаследовано от UIElement)
DragStarting

Происходит при инициации операции перетаскивания.

(Унаследовано от UIElement)
Drop

Происходит, когда система ввода сообщает о базовом событии удаления с этим элементом в качестве цели удаления.

(Унаследовано от UIElement)
DropCompleted

Происходит при завершении операции перетаскивания с этим элементом в качестве источника.

(Унаследовано от UIElement)
EffectiveViewportChanged

Происходит при изменении действующего окна просмотраFrameworkElement.

(Унаследовано от FrameworkElement)
GettingFocus

Происходит до того, как ЭЛЕМЕНТ UIElement получит фокус. Это событие возникает синхронно, чтобы фокус не перемещался, пока событие не перемещается.

(Унаследовано от UIElement)
GotFocus

Происходит, когда UIElement получает фокус. Это событие возникает асинхронно, поэтому фокус может снова переместиться до завершения восходящего движения.

(Унаследовано от UIElement)
Holding

Происходит, когда в противном случае происходит необработанное взаимодействие удержания в области проверки попадания этого элемента.

(Унаследовано от UIElement)
KeyDown

Происходит при нажатии клавиши клавиатуры, когда элемент UIElement находится в фокусе.

(Унаследовано от UIElement)
KeyUp

Происходит при освобождении клавиши клавиатуры, когда элемент UIElement находится в фокусе.

(Унаследовано от UIElement)
LayoutUpdated

Происходит при изменении макета визуального дерева из-за изменения значения свойств, относящихся к макету, или другого действия, которое обновляет макет.

(Унаследовано от FrameworkElement)
Loaded

Происходит, когда FrameworkElement был создан и добавлен в дерево объектов и готов к взаимодействию.

(Унаследовано от FrameworkElement)
Loading

Происходит, когда FrameworkElement начинает загружаться.

(Унаследовано от FrameworkElement)
LosingFocus

Происходит до того, как ЭЛЕМЕНТ UIElement потеряет фокус. Это событие возникает синхронно, чтобы фокус не перемещался, пока событие не перемещается.

(Унаследовано от UIElement)
LostFocus

Происходит, когда ЭЛЕМЕНТ UIElement теряет фокус. Это событие возникает асинхронно, поэтому фокус может снова переместиться до завершения восходящего движения.

(Унаследовано от UIElement)
ManipulationCompleted

Происходит при завершении манипуляции с UIElement .

(Унаследовано от UIElement)
ManipulationDelta

Происходит, когда устройство ввода меняет положение в процессе манипуляции.

(Унаследовано от UIElement)
ManipulationInertiaStarting

Происходит, если во время манипуляции устройство ввода теряет контакт с объектом UIElement и начинает действовать инерция.

(Унаследовано от UIElement)
ManipulationStarted

Происходит, когда устройство ввода начинает манипуляцию над UIElement.

(Унаследовано от UIElement)
ManipulationStarting

Происходит при первоначальном создании процессора манипулирования.

(Унаследовано от UIElement)
NoFocusCandidateFound

Происходит, когда пользователь пытается переместить фокус (с помощью стрелки табуляции или направления), но фокус не перемещается, так как в направлении перемещения не найден кандидат фокуса.

(Унаследовано от UIElement)
PointerCanceled

Происходит, когда указатель, который сделал контакт ненормальным образом, теряет контакт.

(Унаследовано от UIElement)
PointerCaptureLost

Происходит, когда запись указателя, ранее удерживаемая этим элементом, перемещается в другой элемент или в другое место.

(Унаследовано от UIElement)
PointerEntered

Происходит, когда указатель входит в область проверки попадания этого элемента.

(Унаследовано от UIElement)
PointerExited

Происходит, когда указатель покидает область проверки попадания этого элемента.

(Унаследовано от UIElement)
PointerMoved

Происходит при перемещении указателя, пока указатель остается в области проверки попадания этого элемента.

(Унаследовано от UIElement)
PointerPressed

Происходит, когда указатель инициирует действие Нажатие в этом элементе.

(Унаследовано от UIElement)
PointerReleased

Происходит при освобождении устройства указателя, которое ранее инициировало действие нажатия , в этом элементе. Обратите внимание, что окончание действия Нажатие не гарантирует срабатывание события PointerReleased. Вместо этого могут возникать другие события. Дополнительные сведения см. в разделе Примечания.

(Унаследовано от UIElement)
PointerWheelChanged

Происходит при изменении значения разностного колесика указателя.

(Унаследовано от UIElement)
PreviewKeyDown

Происходит при нажатии клавиши клавиатуры, когда элемент UIElement находится в фокусе.

(Унаследовано от UIElement)
PreviewKeyUp

Происходит при освобождении клавиши клавиатуры, когда элемент UIElement находится в фокусе.

(Унаследовано от UIElement)
ProcessKeyboardAccelerators

Происходит при нажатии сочетания клавиш (или ускорителя ).

(Унаследовано от UIElement)
RightTapped

Возникает при возникновении стимула ввода правой кнопкой касания, когда указатель находится над элементом.

(Унаследовано от UIElement)
SizeChanged

Происходит при изменении значения свойства ActualHeight или ActualWidth в FrameworkElement.

(Унаследовано от FrameworkElement)
Tapped

Происходит, когда в противном случае происходит необработанное взаимодействие касания в области проверки попадания этого элемента.

(Унаследовано от UIElement)
Unloaded

Происходит, когда этот объект больше не подключен к дереву объектов main.

(Унаследовано от FrameworkElement)

Применяется к

См. также раздел