Postupy: Implementace poskytovatele rozšíření

Poskytovatelé zařízení Extender můžete přidat vlastnosti ovládacích prvků.Ovládací prvky ActiveX se také používá pojem zprostředkovatelů zařízení extender, ale jejich vyžadují zvláštní podporu programovací jazyk.V.NET Framework extender poskytovatelé vyžadují žádné zvláštní podporu.Ve zdrojovém kódu existuje vlastnost extender zprostředkovatele objektu zprostředkovatele zařízení extender.Nastavení hodnoty vlastnosti na jiný objekt vyžaduje dva kusy informace: objekt, nastavte hodnotu na a nové hodnoty vlastnosti.Má například model Windows Forms ToolTip součást, která nabízí vlastnost extender na jiné ovládací prvky.Je řetězec, který představuje vlastnost nastaví na jiné objekty Popis které se zobrazí, když se ukazatel myši setrvá na ovládacím prvku.Následující příklad kódu ukazuje, jak lze nastavit ToolTip vlastnost.

tooltip1.SetToolTip(button1, "The tooltip text")
tooltip1.SetToolTip(button1, "The tooltip text");

V době návrhu zařízení extender vlastnosti zobrazí v prohlížeči vlastností jako vlastnosti objektů, které rozšiřují, spíše než skutečnou rozšiřující objekt.V předchozím příkladu ToolTip vlastnost se zobrazí na button1, není v tooltip1.

Rozšiřující zprostředkovatel implementovat

  1. Součást, která implementuje definovat IExtenderProvider rozhraní.

    Public Class MyExtender
       Implements IExtenderProvider
       ...
    End Class
    
    public class MyExtender : IExtenderProvider {...}
    

    Definice IExtenderProvider je následující.

    Public Interface IExtenderProvider
       Function CanExtend(ByVal extendee As Object) As Boolean
    End Interface
    
    public interface IExtenderProvider {
        bool CanExtend(object extendee);
    }
    
  2. Implementace CanExtend metodu tak, že se vrátí true pro každou součást nebo zařízení extender poskytuje vlastnosti pro ovládací prvek.

  3. Další součásti definujte sadu vlastností, které mohou poskytnout zařízení extender.Vlastnosti jsou skutečně metody, protože přijmou dodatečný parametr, který určuje součást použít vlastnost.

Třída extender Zprostředkovatel musí být označeno ProvidePropertyAttribute.Konstruktoru ProvidePropertyAttribute má dva argumenty: první, řetězec určující název vlastnosti přidat, a za druhé, typ objektu poskytnout vlastnost.

<ProvideProperty("HelpText", GetType(IComponent))> _
Public Class MyExtender
   Implements IExtenderProvider 
   ...
End Class
[ProvideProperty("HelpText", typeof(IComponent))]
   class MyExtender : IExtenderProvider {...}

Zatímco rozšiřující zprostředkovatel může poskytnout vlastnosti libovolné součásti, provedení obvykle obsahuje funkce, které mohou použít pouze určité kategorii součásti.

Celý vzorek viz Postupy: Implementace poskytovatele rozšíření HelpLabel.

Viz také

Úkoly

Postupy: Implementace poskytovatele rozšíření HelpLabel

Další zdroje

Rozšíření podpory během návrhu