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 类是在 SelectionTool 为活动工具时一个为最初选定元素的 ItemPolicy。
示例
下面的代码示例演示如何为主选择实现自定义代理项策略。 有关完整的代码清单,请参见如何:创建代理项策略。
' 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(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。
请参见
参考
Microsoft.Windows.Design.Policies 命名空间