Freigeben über


UsesItemPolicyAttribute-Klasse

Aktualisiert: November 2007

Beschränkt einen Featureanbieter auf eine angegebene Richtlinie.

Namespace:  Microsoft.Windows.Design.Policies
Assembly:  Microsoft.Windows.Design.Extensibility (in Microsoft.Windows.Design.Extensibility.dll)

Syntax

<AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple := True)> _
Public NotInheritable Class UsesItemPolicyAttribute _
    Inherits RequirementAttribute

Dim instance As UsesItemPolicyAttribute
[AttributeUsageAttribute(AttributeTargets.Class, AllowMultiple = true)]
public sealed class UsesItemPolicyAttribute : RequirementAttribute
[AttributeUsageAttribute(AttributeTargets::Class, AllowMultiple = true)]
public ref class UsesItemPolicyAttribute sealed : public RequirementAttribute
public final class UsesItemPolicyAttribute extends RequirementAttribute

Hinweise

Richtlinien werden nicht von allen Erweiterungen unterstützt.

Beispiele

Im folgenden Codebeispiel wird veranschaulicht, wie eine benutzerdefinierten Ersatzrichtlinie mit UsesItemPolicyAttribute an einen Featureanbieter angefügt wird. Eine vollständige Codeauflistung finden Sie unter Gewusst wie: Erstellen einer Ersatzrichtlinie.

' 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.
        Dim placement As New AdornerPlacementCollection()
        placement.PositionRelativeToAdornerWidth(-1, 0)
        placement.SizeRelativeToAdornerDesiredHeight(1.0, 0)
        placement.SizeRelativeToAdornerDesiredWidth(1.0, 0)
        placement.PositionRelativeToAdornerHeight(-1.0, 0)
        AdornerPanel.SetPlacements(r, placement)

        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.
        AdornerPlacementCollection placement = new AdornerPlacementCollection();
        placement.PositionRelativeToAdornerWidth(-1, 0);
        placement.SizeRelativeToAdornerDesiredHeight(1.0, 0);
        placement.SizeRelativeToAdornerDesiredWidth(1.0, 0);
        placement.PositionRelativeToAdornerHeight(-1.0, 0);
        AdornerPanel.SetPlacements(r, placement);

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

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

        Adorners.Add(p);
    }
} 

Vererbungshierarchie

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

Threadsicherheit

Alle öffentlichen static (Shared in Visual Basic)-Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Siehe auch

Referenz

UsesItemPolicyAttribute-Member

Microsoft.Windows.Design.Policies-Namespace

ItemPolicy

SelectionPolicy

FeatureProvider

FeatureConnectorAttribute

Weitere Ressourcen

Featureanbieter und Featureverbindungen

WPF-Designer-Erweiterbarkeit