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


PrimarySelectionPolicy - класс

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

Иерархия наследования

System.Object
  Microsoft.Windows.Design.Policies.ItemPolicy
    Microsoft.Windows.Design.Policies.SelectionPolicy
      Microsoft.Windows.Design.Policies.PrimarySelectionPolicy

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

Синтаксис

'Декларация
Public Class PrimarySelectionPolicy _
    Inherits SelectionPolicy
public class PrimarySelectionPolicy : SelectionPolicy
public ref class PrimarySelectionPolicy : public SelectionPolicy
type PrimarySelectionPolicy =  
    class
        inherit SelectionPolicy
    end
public class PrimarySelectionPolicy extends SelectionPolicy

Тип PrimarySelectionPolicy предоставляет следующие члены.

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

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

В начало страницы

Свойства

  Имя Описание
Защищенное свойство Context Возврат контекста редактирования для конструктора. (Унаследовано от ItemPolicy.)
Открытое свойство IsSurrogate Возврат значения, указывающего, является ли политика политикой замещения. (Унаследовано от ItemPolicy.)
Открытое свойство PolicyItems Получает перечисление элементов, которые затрагивает эта политика. (Унаследовано от SelectionPolicy.)

В начало страницы

Методы

  Имя Описание
Открытый метод Equals Определяет, равен ли заданный объект Object текущему объекту Object. (Унаследовано от Object.)
Защищенный метод Finalize Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора. (Унаследовано от Object.)
Открытый метод GetHashCode Играет роль хэш-функции для определенного типа. (Унаследовано от Object.)
Защищенный метод GetPolicyItems Возврат элемента политики, представляющего первичный объект выделения. (Переопределяет SelectionPolicy.GetPolicyItems(Selection).)
Открытый метод GetSurrogateItems Возврат необязательного набора элементов замещения для этого элемента. (Унаследовано от ItemPolicy.)
Открытый метод GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
Защищенный метод IsInPolicy Получает значение, определяющее необходимость включения заданного элемента в политику. (Унаследовано от SelectionPolicy.)
Защищенный метод MemberwiseClone Создает неполную копию текущего объекта Object. (Унаследовано от Object.)
Защищенный метод OnActivated Вызывается при активации данной политики. (Унаследовано от SelectionPolicy.)
Защищенный метод OnDeactivated Вызывается при деактивации данной политики. (Унаследовано от SelectionPolicy.)
Защищенный метод OnPolicyItemsChanged Вызов события PolicyItemsChanged. (Унаследовано от ItemPolicy.)
Открытый метод ToString Возвращение строки, представляющей текущий объект. (Унаследовано от Object.)

В начало страницы

События

  Имя Описание
Открытое событие PolicyItemsChanged Происходит при изменении политики. (Унаследовано от ItemPolicy.)

В начало страницы

Заметки

Класс PrimarySelectionPolicy представляет собой объект ItemPolicy, разрешенный для первичного элемента выделения, если в качестве активного выбран инструмент SelectionTool.

Примеры

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

' The DockPanelPolicy class implements a surrogate policy that
' provides container semantics for a selected item. By using 
' this policy, the DemoDockPanel container control offers 
' additional tasks and adorners on its children. 
Class DockPanelPolicy
    Inherits PrimarySelectionPolicy

    Public Overrides ReadOnly Property IsSurrogate() As Boolean 
        Get
            Return True
        End Get
    End Property

    Public Overrides Function GetSurrogateItems( _
        ByVal item As Microsoft.Windows.Design.Model.ModelItem) _
        As System.Collections.Generic.IEnumerable( _
        Of Microsoft.Windows.Design.Model.ModelItem)

        Dim parent As ModelItem = item.Parent

        Dim e As New System.Collections.Generic.List(Of ModelItem)

        If (parent IsNot Nothing) Then

            e.Add(parent)

        End If

        Return e

    End Function

End Class
// The DockPanelPolicy class implements a surrogate policy that
// provides container semantics for a selected item. By using 
// this policy, the DemoDockPanel container control offers 
// additional tasks and adorners on its children. 
class DockPanelPolicy : PrimarySelectionPolicy 
{
    public override bool IsSurrogate 
    {
        get 
        { 
            return true;
        }
    }

    public override IEnumerable<ModelItem> GetSurrogateItems(ModelItem item) 
    {
        ModelItem parent = item.Parent;

        if (parent != null)
        {
            yield return parent;
        }
    }
}

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

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

См. также

Ссылки

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

ItemPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

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

Поставщики функций и соединительные элементы

Общее представление о расширяемости конструктора WPF