SelectionPolicy 클래스
업데이트: 2007년 11월
선택된 모든 항목을 사용할 수 있게 하는 정책입니다.
네임스페이스: Microsoft.Windows.Design.Policies
어셈블리: Microsoft.Windows.Design.Extensibility(Microsoft.Windows.Design.Extensibility.dll)
구문
<RequiresContextItemAttribute(GetType(Selection))> _
<RequiresContextItemAttribute(GetType(Tool))> _
Public Class SelectionPolicy _
Inherits ItemPolicy
Dim instance As SelectionPolicy
[RequiresContextItemAttribute(typeof(Selection))]
[RequiresContextItemAttribute(typeof(Tool))]
public class SelectionPolicy : ItemPolicy
[RequiresContextItemAttribute(typeof(Selection))]
[RequiresContextItemAttribute(typeof(Tool))]
public ref class SelectionPolicy : public ItemPolicy
public class SelectionPolicy extends ItemPolicy
설명
이 정책에서 파생하여 IsInPolicy 및 GetPolicyItems 메서드를 재정의하면 선택 내용을 필요에 따라 필터링할 수 있습니다.
예제
다음 코드 예제에서는 기본 선택 내용에 대한 사용자 지정 서로게이트 정책을 구현하는 방법을 보여 줍니다. 전체 코드는 방법: 서로게이트 정책 만들기를 참조하십시오.
' 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;
}
}
}
상속 계층 구조
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
스레드로부터의 안전성
이 형식의 모든 공용 static(Visual Basic의 경우 Shared) 멤버는 스레드로부터 안전합니다. 인터페이스 멤버는 스레드로부터 안전하지 않습니다.
참고 항목
참조
Microsoft.Windows.Design.Policies 네임스페이스
FeatureConnector<TFeatureProviderType>