AdornerPanel - класс
Обновлен: Ноябрь 2007
Предоставляет контейнер для элементов управления Windows Presentation Foundation (WPF), используемых во время разработки в качестве декоративных элементов.
Пространство имен: Microsoft.Windows.Design.Interaction
Сборка: Microsoft.Windows.Design.Interaction (в Microsoft.Windows.Design.Interaction.dll)
Синтаксис
'Декларация
Public Class AdornerPanel _
Inherits Panel
'Применение
Dim instance As AdornerPanel
public class AdornerPanel : Panel
public ref class AdornerPanel : public Panel
public class AdornerPanel extends Panel
Заметки
Класс AdornerPanel используется для хранения декоративных элементов времени разработки. Декоративный элемент — это часть пользовательского интерфейса, используемая для оформления другой части интерфейса.
Элементы управления, которые будут представлять декоративные элементы, следует хранить в коллекции Children.
Для изменения размера панели декоративных элементов относительно декорируемого элемента управления используются методы SetHorizontalStretch и SetVerticalStretch.
Для изменения размера и позиции декоративных элементов создается коллекция AdornerPlacementCollection и вызываются ее методы, связанные с заданием размера и позиции. Коллекция AdornerPlacementCollection добавляется в панель декоративных элементов с помощью метода SetPlacements.
Когда панель декоративных элементов настроена, ее следует добавить в коллекцию Adorners реализации AdornerProvider.
Декоративные элементы связываются с командами инструментов через вложенное свойство "Tool". При наведении указателя мыши на декоративный элемент привязки этого элемента становятся доступны в составе схемы маршрутизации ввода и команд. Кроме того, модель, связанная с декорируемым элементом пользовательского интерфейса, становится "исходным" значением любых данных жеста, которые создаются, когда декоративный элемент активен.
Примеры
В следующем примере кода демонстрируется, как использовать панель AdornerPanel для размещения элемента управления Slider, который используется во время разработки для задания свойства Background декорируемого элемента управления. Дополнительные сведения см. в разделе Пошаговое руководство. Создание графического элемента времени разработки.
' Setup the adorner panel.
' All adorners are placed in an AdornerPanel
' for sizing and layout support.
Dim myPanel = Me.Panel
AdornerPanel.SetHorizontalStretch(opacitySlider, AdornerStretch.Stretch)
AdornerPanel.SetVerticalStretch(opacitySlider, AdornerStretch.None)
Dim placement As New AdornerPlacementCollection()
' The adorner's width is relative to the content.
' The slider extends the full width of the control it adorns.
placement.SizeRelativeToContentWidth(1.0, 0)
' The adorner's height is the same as the slider's.
placement.SizeRelativeToAdornerDesiredHeight(1.0, 0)
' Position the adorner above the control it adorns.
placement.PositionRelativeToAdornerHeight(-1.0, 0)
' Position the adorner up 5 pixels. This demonstrates
' that these placement calls are additive. These two calls
' are equivalent to the following single call:
' PositionRelativeToAdornerHeight(-1.0, -5).
placement.PositionRelativeToAdornerHeight(0, -5)
AdornerPanel.SetPlacements(opacitySlider, placement)
// Setup the adorner panel.
// All adorners are placed in an AdornerPanel
// for sizing and layout support.
AdornerPanel myPanel = this.Panel;
AdornerPanel.SetHorizontalStretch(opacitySlider, AdornerStretch.Stretch);
AdornerPanel.SetVerticalStretch(opacitySlider, AdornerStretch.None);
AdornerPlacementCollection placement = new AdornerPlacementCollection();
// The adorner's width is relative to the content.
// The slider extends the full width of the control it adorns.
placement.SizeRelativeToContentWidth(1.0, 0);
// The adorner's height is the same as the slider's.
placement.SizeRelativeToAdornerDesiredHeight(1.0, 0);
// Position the adorner above the control it adorns.
placement.PositionRelativeToAdornerHeight(-1.0, 0);
// Position the adorner up 5 pixels. This demonstrates
// that these placement calls are additive. These two calls
// are equivalent to the following single call:
// PositionRelativeToAdornerHeight(-1.0, -5).
placement.PositionRelativeToAdornerHeight(0, -5);
AdornerPanel.SetPlacements(opacitySlider, placement);
Иерархия наследования
System.Object
System.Windows.Threading.DispatcherObject
System.Windows.DependencyObject
System.Windows.Media.Visual
System.Windows.UIElement
System.Windows.FrameworkElement
System.Windows.Controls.Panel
Microsoft.Windows.Design.Interaction.AdornerPanel
Потокобезопасность
Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.
См. также
Ссылки
Microsoft.Windows.Design.Interaction - пространство имен
Другие ресурсы
Архитектура графического элемента