Compartilhar via


Classe SelectionPolicy

Uma diretiva que disponibiliza todos os itens na seleção.

Hierarquia de herança

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

Namespace:  Microsoft.Windows.Design.Policies
Assembly:  Microsoft.Windows.Design.Interaction (em Microsoft.Windows.Design.Interaction.dll)

Sintaxe

'Declaração
<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

O tipo SelectionPolicy expõe os membros a seguir.

Construtores

  Nome Descrição
Método público SelectionPolicy Initializes a new instance of the SelectionPolicy class.

Início

Propriedades

  Nome Descrição
Propriedade protegida Context Obtém o contexto de edição para o designer. (Herdado de ItemPolicy.)
Propriedade pública IsSurrogate Obtém um valor indicando se a diretiva é um substituto. (Herdado de ItemPolicy.)
Propriedade pública PolicyItems Obtém uma enumeração de itens que são afetados por essa política. (Substitui ItemPolicy.PolicyItems.)

Início

Métodos

  Nome Descrição
Método público Equals Determina se o especificado Object é igual a atual Object. (Herdado de Object.)
Método protegido Finalize Permite que um objeto tentar liberar recursos e executar outras operações de limpeza antes que ele é recuperado pela coleta de lixo. (Herdado de Object.)
Método público GetHashCode Serves as a hash function for a particular type. (Herdado de Object.)
Método protegido GetPolicyItems Retorna os itens da política da seleção especificada.
Método público GetSurrogateItems Retorna um conjunto opcional de itens de substitutos para este item. (Herdado de ItemPolicy.)
Método público GetType Obtém o Type da instância atual. (Herdado de Object.)
Método protegido IsInPolicy Obtém um valor que indica se o item especificado está para ser incluído na diretiva.
Método protegido MemberwiseClone Cria uma cópia superficial do atual Object. (Herdado de Object.)
Método protegido OnActivated Chamado quando essa diretiva é ativada. (Substitui ItemPolicy.OnActivated().)
Método protegido OnDeactivated Chamado quando essa diretiva está desativada. (Substitui ItemPolicy.OnDeactivated().)
Método protegido OnPolicyItemsChanged Raises the PolicyItemsChanged event. (Herdado de ItemPolicy.)
Método público ToString Retorna um string que representa o objeto atual. (Herdado de Object.)

Início

Eventos

  Nome Descrição
Evento público PolicyItemsChanged Ocorre quando a diretiva é alterado. (Herdado de ItemPolicy.)

Início

Comentários

Derivar esta diretiva e a substituição de IsInPolicy e GetPolicyItems métodos para filtrar a seleção como necessário.

Exemplos

O exemplo de código a seguir mostra como implementar uma diretiva do substituto personalizado para a seleção principal. Para obter uma listagem de código completo, consulte Como: criar uma diretiva substituto.

' 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;
        }
    }
}

Acesso thread-safe

Quaisquer membros static (Shared no Visual Basic) públicos deste tipo são thread-safe. Não há garantia de que qualquer membro de instância seja thread-safe.

Consulte também

Referência

Namespace Microsoft.Windows.Design.Policies

ItemPolicy

FeatureProvider

FeatureConnector<TFeatureProviderType>

Outros recursos

Recurso provedores e conectores de recursos

Noções básicas sobre extensibilidade Designer WPF