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


UsesItemPolicyAttribute - класс

Ограничение на использование поставщика функций только заданной политикой.

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

System.Object
  System.Attribute
    Microsoft.Windows.Design.RequirementAttribute
      Microsoft.Windows.Design.Policies.UsesItemPolicyAttribute

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

Синтаксис

'Декларация
<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True)> _
Public NotInheritable Class UsesItemPolicyAttribute _
    Inherits RequirementAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true)]
public sealed class UsesItemPolicyAttribute : RequirementAttribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true)]
public ref class UsesItemPolicyAttribute sealed : public RequirementAttribute
[<Sealed>]
[<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true)>]
type UsesItemPolicyAttribute =  
    class
        inherit RequirementAttribute
    end
public final class UsesItemPolicyAttribute extends RequirementAttribute

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

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

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

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

Свойства

  Имя Описание
Открытое свойство AllRequired Переопределяет свойство RequirementAttribute.AllRequired для возврата значения false. (Переопределяет RequirementAttribute.AllRequired.)
Открытое свойство ItemPolicyType Получает тип политики, с которой может быть связан поставщик функций.
Открытое свойство TypeId Получает идентификатора типа для этого атрибута. (Переопределяет Attribute.TypeId.)

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

Методы

  Имя Описание
Открытый метод CreateSubscription Возврат объекта RequirementSubscription, который можно использовать для получения уведомлений о доступности политики. (Переопределяет RequirementAttribute.CreateSubscription(EditingContext).)
Открытый метод Equals Определяет, совпадает ли указанный объект с данным объектом UsesItemPolicyAttribute. (Переопределяет Attribute.Equals(Object).)
Защищенный метод Finalize Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора. (Унаследовано от Object.)
Открытый метод GetHashCode Возвращает хэш-код для данного атрибута. (Переопределяет Attribute.GetHashCode().)
Открытый метод GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
Открытый метод IsDefaultAttribute При переопределении в производном классе показывает, является ли значение данного экземпляра значением по умолчанию для производного класса. (Унаследовано от Attribute.)
Открытый метод Match При переопределении в производном классе возвращает значение, указывающее, является ли этот экземпляр равным заданному объекту. (Унаследовано от Attribute.)
Открытый метод MeetsRequirement Возврат значения, указывающего, содержит ли заданный контекст редактирования объект ItemPolicyType, связанный с этим экземпляром атрибута. (Переопределяет RequirementAttribute.MeetsRequirement(EditingContext).)
Защищенный метод MemberwiseClone Создает неполную копию текущего объекта Object. (Унаследовано от Object.)
Открытый метод ToString Возвращение строки, представляющей текущий объект. (Унаследовано от Object.)

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

Явные реализации интерфейса

  Имя Описание
Явная реализация интерфейсаЗакрытый метод _Attribute.GetIDsOfNames Сопоставляет набор имен соответствующему набору идентификаторов диспетчеризации. (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.GetTypeInfo Возвращает сведения о типе объекта, которые могут использоваться для получения сведений о типе интерфейса. (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.GetTypeInfoCount Возвращает количество предоставляемых объектом интерфейсов для доступа к сведениям о типе (0 или 1). (Унаследовано от Attribute.)
Явная реализация интерфейсаЗакрытый метод _Attribute.Invoke Предоставляет доступ к открытым свойствам и методам объекта. (Унаследовано от Attribute.)

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

Заметки

Политики поддерживаются не всеми расширениями.

Примеры

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

' The DockPanelAdornerProvider class implements an adorner
' that you can use to set the Margin property by using a 
' drag operation. The DockPanelPolicy class enables a 
' container policy for offering additional tasks and 
' adorners on the panel's children.
<UsesItemPolicy(GetType(DockPanelPolicy))>  _
Class DockPanelAdornerProvider
    Inherits AdornerProvider

    Public Sub New() 
        ' The adorner is a Rectangle element.
        Dim r As New Rectangle()
        r.Width = 23.0
        r.Height = 23.0
        r.Fill = AdornerColors.GlyphFillBrush

        ' Set the rectangle's placement in the adorner panel.
        AdornerPanel.SetAdornerHorizontalAlignment(r, AdornerHorizontalAlignment.OutsideLeft)
        AdornerPanel.SetAdornerVerticalAlignment(r, AdornerVerticalAlignment.OutsideTop)

        Dim p As New AdornerPanel()
        p.Children.Add(r)

        AdornerPanel.SetTask(r, New DockPanelMarginTask())

        Adorners.Add(p)
    End Sub
End Class
// The DockPanelAdornerProvider class implements an adorner
// that you can use to set the Margin property by using a 
// drag operation. The DockPanelPolicy class enables a 
// container policy for offering additional tasks and 
// adorners on the panel's children.
[UsesItemPolicy(typeof(DockPanelPolicy))]
class DockPanelAdornerProvider : AdornerProvider
{
    public DockPanelAdornerProvider() 
    {
        // The adorner is a Rectangle element.
        Rectangle r = new Rectangle();
        r.Width = 23.0;
        r.Height = 23.0;
        r.Fill = AdornerColors.GlyphFillBrush;

        // Set the rectangle's placement in the adorner panel.
        AdornerPanel.SetAdornerHorizontalAlignment(r, AdornerHorizontalAlignment.OutsideLeft);
        AdornerPanel.SetAdornerVerticalAlignment(r, AdornerVerticalAlignment.OutsideTop);

        AdornerPanel p = new AdornerPanel();
        p.Children.Add(r);

        AdornerPanel.SetTask(r, new DockPanelMarginTask());

        Adorners.Add(p);
    }
} 

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

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

См. также

Ссылки

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

ItemPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

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

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

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