SelectionPolicy 類別
原則,會讓選取範圍中的所有項目都可以使用。
繼承階層架構
System.Object
Microsoft.Windows.Design.Policies.ItemPolicy
Microsoft.Windows.Design.Policies.SelectionPolicy
Microsoft.Windows.Design.Policies.PrimarySelectionPolicy
Microsoft.Windows.Design.Policies.SecondarySelectionPolicy
Microsoft.Windows.Design.Policies.SelectionParentPolicy
命名空間: Microsoft.Windows.Design.Policies
組件: Microsoft.Windows.Design.Interaction (在 Microsoft.Windows.Design.Interaction.dll 中)
語法
'宣告
<RequiresContextItemAttribute(GetType(Selection))> _
<RequiresContextItemAttribute(GetType(Tool))> _
Public Class SelectionPolicy _
Inherits ItemPolicy
[RequiresContextItemAttribute(typeof(Selection))]
[RequiresContextItemAttribute(typeof(Tool))]
public class SelectionPolicy : ItemPolicy
[RequiresContextItemAttribute(typeof(Selection))]
[RequiresContextItemAttribute(typeof(Tool))]
public ref class SelectionPolicy : public ItemPolicy
[<RequiresContextItemAttribute(typeof(Selection))>]
[<RequiresContextItemAttribute(typeof(Tool))>]
type SelectionPolicy =
class
inherit ItemPolicy
end
public class SelectionPolicy extends ItemPolicy
SelectionPolicy 型別會公開下列成員。
建構函式
名稱 | 說明 | |
---|---|---|
SelectionPolicy | 初始化 SelectionPolicy 類別的新執行個體。 |
回頁首
屬性
名稱 | 說明 | |
---|---|---|
Context | 會取得設計工具的編輯內容。 (繼承自 ItemPolicy)。 | |
IsSurrogate | 取得值,這個值表示原則是否為代理原則。 (繼承自 ItemPolicy)。 | |
PolicyItems | 會取得受這個原則影響之項目的列舉。 (覆寫 ItemPolicy.PolicyItems。) |
回頁首
方法
名稱 | 說明 | |
---|---|---|
Equals | 判斷指定的 Object 和目前的 Object 是否相等。 (繼承自 Object)。 | |
Finalize | 允許物件在記憶體回收進行回收之前,嘗試釋放資源並執行其他清除作業。 (繼承自 Object)。 | |
GetHashCode | 做為特定型別的雜湊函式。 (繼承自 Object)。 | |
GetPolicyItems | 傳回指定之選取範圍中的原則項目。 | |
GetSurrogateItems | 會傳回這個項目的選擇性代理項目。 (繼承自 ItemPolicy)。 | |
GetType | 取得目前執行個體的 Type。 (繼承自 Object)。 | |
IsInPolicy | 取得值,這個值表示是否要將指定的項目包含在原則中。 | |
MemberwiseClone | 建立目前 Object 的淺層複本 (Shallow Copy)。 (繼承自 Object)。 | |
OnActivated | 會在啟動這個原則時呼叫。 (覆寫 ItemPolicy.OnActivated()。) | |
OnDeactivated | 會在停用這個原則時呼叫。 (覆寫 ItemPolicy.OnDeactivated()。) | |
OnPolicyItemsChanged | 引發 PolicyItemsChanged 事件。 (繼承自 ItemPolicy)。 | |
ToString | 傳回表示目前物件的字串。 (繼承自 Object)。 |
回頁首
事件
名稱 | 說明 | |
---|---|---|
PolicyItemsChanged | 會在原則變更時發生。 (繼承自 ItemPolicy)。 |
回頁首
備註
您可以衍生自這個原則並覆寫 IsInPolicy 和 GetPolicyItems 方法,視需要篩選選取範圍。
範例
下列程式碼範例示範如何實作主要選取的自訂代理原則。 如需完整的程式碼清單,請參閱 HOW TO:建立 Surrogate 原則。
' 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;
}
}
}
執行緒安全
這個型別的任何 Public static (在 Visual Basic 中為 Shared) 成員都具備執行緒安全。並非所有的執行個體成員都是安全執行緒。
請參閱
參考
Microsoft.Windows.Design.Policies 命名空間
FeatureConnector<TFeatureProviderType>