Classe RequirementAttribute
Define atributos usados pelo RequirementValidator classe.
Namespace: Microsoft.Windows.Design
Assembly: Microsoft.Windows.Design.Extensibility (em Microsoft.Windows.Design.Extensibility.dll)
Sintaxe
Public MustInherit Class RequirementAttribute _
Inherits Attribute
Dim instance As RequirementAttribute
public abstract class RequirementAttribute : Attribute
public ref class RequirementAttribute abstract : public Attribute
public abstract class RequirementAttribute extends Attribute
Comentários
Derivar o abstract RequirementAttribute classe para especificar exigências para seus provedores de recurso e conectores de recurso.
RequirementValidator inspeciona tipos para RequirementAttribute atributos. Para cada RequirementAttribute Encontre, ele chama o resumo MeetsRequirement método, passando uma instância das EditingContext classe. Classes, sistema autônomo RequiresServiceAttribute derivar de RequirementAttribute e verifique se o contexto para a presença de um requisito especificado.
Este sistema permite que o designer ativar somente código que pode ser executado com êxito no contexto de edição.
Definir você requisitos personalizados derivando de RequirementAttribute e a implementação de resumo MeetsRequirement método.
Exemplos
O exemplo de código a seguir mostra como anexar uma diretiva personalizada substituto para um provedor de recurso usando UsesItemPolicyAttribute, que deriva de RequirementAttribute. Para obter uma listagem de código completo, consulte Como: Criar uma diretiva substituto.
' The DockPanelAdornerProvider class implements an adorner
' that you can use to set the Margin property by using a
' drag operation. The DockPanelPolicy class enables a
' container policy for offering additional tasks and
' adorners on the panel's children.
<UsesItemPolicy(GetType(DockPanelPolicy))> _
Class DockPanelAdornerProvider
Inherits AdornerProvider
Public Sub New()
' The adorner is a Rectangle element.
Dim r As New Rectangle()
r.Width = 23.0
r.Height = 23.0
r.Fill = AdornerColors.GlyphFillBrush
' Set the rectangle's placement in the adorner panel.
Dim placement As New AdornerPlacementCollection()
placement.PositionRelativeToAdornerWidth(-1, 0)
placement.SizeRelativeToAdornerDesiredHeight(1.0, 0)
placement.SizeRelativeToAdornerDesiredWidth(1.0, 0)
placement.PositionRelativeToAdornerHeight(-1.0, 0)
AdornerPanel.SetPlacements(r, placement)
Dim p As New AdornerPanel()
p.Children.Add(r)
AdornerPanel.SetTask(r, New DockPanelMarginTask())
Adorners.Add(p)
End Sub
End Class
// The DockPanelAdornerProvider class implements an adorner
// that you can use to set the Margin property by using a
// drag operation. The DockPanelPolicy class enables a
// container policy for offering additional tasks and
// adorners on the panel's children.
[UsesItemPolicy(typeof(DockPanelPolicy))]
class DockPanelAdornerProvider : AdornerProvider
{
public DockPanelAdornerProvider()
{
// The adorner is a Rectangle element.
Rectangle r = new Rectangle();
r.Width = 23.0;
r.Height = 23.0;
r.Fill = AdornerColors.GlyphFillBrush;
// Set the rectangle's placement in the adorner panel.
AdornerPlacementCollection placement = new AdornerPlacementCollection();
placement.PositionRelativeToAdornerWidth(-1, 0);
placement.SizeRelativeToAdornerDesiredHeight(1.0, 0);
placement.SizeRelativeToAdornerDesiredWidth(1.0, 0);
placement.PositionRelativeToAdornerHeight(-1.0, 0);
AdornerPanel.SetPlacements(r, placement);
AdornerPanel p = new AdornerPanel();
p.Children.Add(r);
AdornerPanel.SetTask(r, new DockPanelMarginTask());
Adorners.Add(p);
}
}
Hierarquia de herança
System.Object
System.Attribute
Microsoft.Windows.Design.RequirementAttribute
Microsoft.Windows.Design.Policies.UsesItemPolicyAttribute
Microsoft.Windows.Design.RequiresContextItemAttribute
Microsoft.Windows.Design.RequiresServiceAttribute
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