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


AdornerPlacementCollection - класс

Обновлен: Ноябрь 2007

Делает возможным точное размещение декоративных элементов в AdornerPanel.

Пространство имен:  Microsoft.Windows.Design.Interaction
Сборка:  Microsoft.Windows.Design.Interaction (в Microsoft.Windows.Design.Interaction.dll)

Синтаксис

'Декларация
Public Class AdornerPlacementCollection _
    Inherits ObservableCollection(Of IAdornerPlacement)
'Применение
Dim instance As AdornerPlacementCollection
public class AdornerPlacementCollection : ObservableCollection<IAdornerPlacement>
public ref class AdornerPlacementCollection : public ObservableCollection<IAdornerPlacement^>
public class AdornerPlacementCollection extends ObservableCollection<IAdornerPlacement>

Заметки

Класс AdornerPlacementCollection используется для указания свойств местоположения, размера и масштабирования панели AdornerPanel относительно декорируемого с ее помощью элемента управления.

Для размещения панели AdornerPanel по высоте и ширине ее декоративного элемента управления используются методы PositionRelativeToAdornerHeight и PositionRelativeToAdornerWidth.

Для задания размера панели AdornerPanel по размеру ее декоративного элемента управления используются методы SizeRelativeToAdornerDesiredWidth и SizeRelativeToContentHeight.

Для задания размера и положения панели AdornerPanel относительно содержащихся на ней декорируемых элементов используются соответствующие содержимому методы.

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

' 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)
// 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);

Примеры

В следующем примере кода демонстрируется использование метода AdornerPlacementCollection для задания положения декоративного элемента в панели декоративных элементов. Дополнительные сведения см. в разделе Пошаговое руководство. Создание графического элемента времени разработки.

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)
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.Collections.ObjectModel.Collection<IAdornerPlacement>
    System.Collections.ObjectModel.ObservableCollection<IAdornerPlacement>
      Microsoft.Windows.Design.Interaction.AdornerPlacementCollection

Потокобезопасность

Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.

См. также

Ссылки

AdornerPlacementCollection - члены

Microsoft.Windows.Design.Interaction - пространство имен

AdornerPanel

PrimarySelectionAdornerProvider

Другие ресурсы

Пошаговое руководство. Создание графического элемента времени разработки

Пошаговое руководство. Реализация границы в элементе управления

Архитектура графического элемента