Classe ItemPolicy
Uma diretiva que especifica um conjunto de regras no designer.
Namespace: Microsoft.Windows.Design.Policies
Assembly: Microsoft.Windows.Design.Extensibility (em Microsoft.Windows.Design.Extensibility.dll)
Sintaxe
Public MustInherit Class ItemPolicy
Dim instance As ItemPolicy
public abstract class ItemPolicy
public ref class ItemPolicy abstract
public abstract class ItemPolicy
Comentários
Derivar o abstract ItemPolicy classe para fornecer uma associação entre um conjunto de itens e provedores de recurso correspondente.
Use diretivas para descobrir recursos de extensibilidade em itens que estão sendo executados no designer.As diretivas são usadas por ferramentas adornos e outras áreas do designer que são extensíveis.The SelectionPolicy classe é um exemplo de diretiva que monitora a seleção muda e dispara o PolicyItemsChanged evento quando a seleção é alterada. O designer trata os eventos de alterar de todas as diretivas em execução e executa a ação apropriada.No caso de SelectionPolicy, as consultas de designer para o conjunto de tarefas ativas que devem estar disponível e o conjunto de adornos que devem ser visíveis na área de design.
Uma única instância de um tipo de diretiva é ativada quando o designer ele descobre nos metadados.As diretivas durar a vida útil do designer e nunca são desativadas, a menos que o designer propriamente dito é descartado.Se você tiver uma diretiva que mantém uma referência para recursos global de processo, implemente o OnDeactivated método, que é chamado quando o Gerenciador de política é encerrado.
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;
}
}
}
Hierarquia de herança
System.Object
Microsoft.Windows.Design.Policies.ItemPolicy
Microsoft.Windows.Design.Policies.SelectionPolicy
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