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 | 取得這個屬性的型別 ID。 (覆寫 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 的淺層複本 (Shallow Copy)。 (繼承自 Object)。 | |
ToString | 傳回表示目前物件的字串。 (繼承自 Object)。 |
回頁首
明確介面實作
名稱 | 說明 | |
---|---|---|
_Attribute.GetIDsOfNames | 將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。 (繼承自 Attribute)。 | |
_Attribute.GetTypeInfo | 擷取物件的型別資訊,可以用來取得介面的型別資訊。 (繼承自 Attribute)。 | |
_Attribute.GetTypeInfoCount | 擷取物件提供的型別資訊介面數目 (0 或 1)。 (繼承自 Attribute)。 | |
_Attribute.Invoke | 提供物件所公開的屬性和方法的存取權。 (繼承自 Attribute)。 |
回頁首
備註
並非所有的擴充功能都支援原則。
範例
下列程式碼範例說明如何將自訂代理原則 (Surrogate Policy) 附加至 UsesItemPolicyAttribute。 如需完整的程式碼清單,請參閱 HOW TO:建立 Surrogate 原則。
' 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);
}
}
執行緒安全
這個型別的任何 Public static (在 Visual Basic 中為 Shared) 成員都具備執行緒安全。並非所有的執行個體成員都是安全執行緒。
請參閱
參考
Microsoft.Windows.Design.Policies 命名空間