ComponentDesigner ComponentDesigner ComponentDesigner ComponentDesigner Class

Definition

Erweitert das Entwurfsmodusverhalten einer Komponente.Extends the design mode behavior of a component.

public ref class ComponentDesigner : IDisposable, System::ComponentModel::Design::IComponentInitializer, System::ComponentModel::Design::IDesignerFilter, System::ComponentModel::Design::ITreeDesigner
public class ComponentDesigner : IDisposable, System.ComponentModel.Design.IComponentInitializer, System.ComponentModel.Design.IDesignerFilter, System.ComponentModel.Design.ITreeDesigner
type ComponentDesigner = class
    interface ITreeDesigner
    interface IDesigner
    interface IDisposable
    interface IDesignerFilter
    interface IComponentInitializer
Public Class ComponentDesigner
Implements IComponentInitializer, IDesignerFilter, IDisposable, ITreeDesigner
Vererbung
ComponentDesignerComponentDesignerComponentDesignerComponentDesigner
Abgeleitet
Implementiert

Beispiele

Das folgende Codebeispiel enthält ein Beispiel ComponentDesigner Implementierung und eine Beispielkomponente, die dem Designer zugeordnete.The following code example provides an example ComponentDesigner implementation and an example component associated with the designer. Der Designer implementiert eine Überschreibung von der Initialize -Methode, die die Basisklasse aufgerufen Initialize -Methode, die eine Überschreibung der der DoDefaultAction Methode, die anzeigt eine MessageBox , wenn die Komponente doppelgeklickt wird, und eine Überschreibung von der Verbs Eigenschaftenaccessors, eine benutzerdefinierte bereitstellt DesignerVerb Menübefehl auf das Kontextmenü für die Komponente.The designer implements an override of the Initialize method that calls the base Initialize method, an override of the DoDefaultAction method that displays a MessageBox when the component is double-clicked, and an override of the Verbs property accessor that supplies a custom DesignerVerb menu command to the shortcut menu for the component.

#using <System.dll>
#using <System.Design.dll>
#using <System.Drawing.dll>
#using <System.Windows.Forms.dll>

using namespace System;
using namespace System::Collections;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Drawing;
using namespace System::Windows::Forms;

// Provides an example component designer.
ref class ExampleComponentDesigner: public ComponentDesigner
{
public:
   ExampleComponentDesigner()
   {
   }

   // This method provides an opportunity to perform processing when a designer is initialized.
   // The component parameter is the component that the designer is associated with.
   virtual void Initialize( IComponent^ component ) override
   {
      // Always call the base Initialize method in an of this method.
      ComponentDesigner::Initialize( component );
   }

   // This method is invoked when the associated component is double-clicked.
   virtual void DoDefaultAction() override
   {
      MessageBox::Show( "The event handler for the default action was invoked." );
   }

   // This method provides designer verbs.
   property DesignerVerbCollection^ Verbs 
   {
      virtual DesignerVerbCollection^ get() override
      {
         array<DesignerVerb^>^ newDesignerVerbs = {gcnew DesignerVerb( "Example Designer Verb Command", gcnew EventHandler( this, &ExampleComponentDesigner::onVerb ) )};
         return gcnew DesignerVerbCollection( newDesignerVerbs );
      }
   }

private:
   // Event handling method for the example designer verb
   void onVerb( Object^ sender, EventArgs^ e )
   {
      MessageBox::Show( "The event handler for the Example Designer Verb Command was invoked." );
   }
};

// Provides an example component associated with the example component designer.

[DesignerAttribute(ExampleComponentDesigner::typeid, IDesigner::typeid)]
ref class ExampleComponent: public Component
{
public:
   ExampleComponent(){}
};
using System;
using System.Collections;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Windows.Forms;

namespace ExampleComponent
{	
    // Provides an example component designer.
    public class ExampleComponentDesigner : System.ComponentModel.Design.ComponentDesigner
    {
        public ExampleComponentDesigner()
        {
        }

        // This method provides an opportunity to perform processing when a designer is initialized.
        // The component parameter is the component that the designer is associated with.
        public override void Initialize(System.ComponentModel.IComponent component)
        {
            // Always call the base Initialize method in an override of this method.
            base.Initialize(component);
        }

        // This method is invoked when the associated component is double-clicked.
        public override void DoDefaultAction()
        {
            MessageBox.Show("The event handler for the default action was invoked.");
        }

        // This method provides designer verbs.
        public override System.ComponentModel.Design.DesignerVerbCollection Verbs
        {
            get
            {
                return new DesignerVerbCollection( new DesignerVerb[] { new DesignerVerb("Example Designer Verb Command", new EventHandler(this.onVerb)) } );
            }
        }

        // Event handling method for the example designer verb
        private void onVerb(object sender, EventArgs e)
        {
            MessageBox.Show("The event handler for the Example Designer Verb Command was invoked.");
        }
    }

    // Provides an example component associated with the example component designer.
    [DesignerAttribute(typeof(ExampleComponentDesigner), typeof(IDesigner))]
    public class ExampleComponent : System.ComponentModel.Component
    {		
        public ExampleComponent()
        {
        }
    }
}
Imports System
Imports System.Collections
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing
Imports System.Windows.Forms

Namespace ExampleComponent

    ' Provides an example component designer.
    Public Class ExampleComponentDesigner
        Inherits System.ComponentModel.Design.ComponentDesigner

        Public Sub New()
        End Sub 'New

        ' This method provides an opportunity to perform processing when a designer is initialized.
        ' The component parameter is the component that the designer is associated with.
        Public Overrides Sub Initialize(ByVal component As System.ComponentModel.IComponent)
            ' Always call the base Initialize method in an override of this method.
            MyBase.Initialize(component)
        End Sub 'Initialize

        ' This method is invoked when the associated component is double-clicked.
        Public Overrides Sub DoDefaultAction()
            MessageBox.Show("The event handler for the default action was invoked.")
        End Sub 'DoDefaultAction

        ' This method provides designer verbs.
        Public Overrides ReadOnly Property Verbs() As System.ComponentModel.Design.DesignerVerbCollection
            Get
                Return New DesignerVerbCollection(New DesignerVerb() {New DesignerVerb("Example Designer Verb Command", New EventHandler(AddressOf Me.onVerb))})
            End Get
        End Property

        ' Event handling method for the example designer verb
        Private Sub onVerb(ByVal sender As Object, ByVal e As EventArgs)
            MessageBox.Show("The event handler for the Example Designer Verb Command was invoked.")
        End Sub 'onVerb
    End Class 'ExampleComponentDesigner

    ' Provides an example component associated with the example component designer.
    <DesignerAttribute(GetType(ExampleComponentDesigner), GetType(IDesigner))> _
     Public Class ExampleComponent
        Inherits System.ComponentModel.Component

        Public Sub New()
        End Sub 'New
    End Class 'ExampleComponent

End Namespace 'ExampleComponent

Hinweise

Die ComponentDesigner Basisdesignerklasse bietet einen einfachen Designer, die das Verhalten einer zugeordneten Komponente im Entwurfsmodus erweitern kann.The ComponentDesigner base designer class provides a simple designer that can extend the behavior of an associated component in design mode.

ComponentDesigner Stellt ein leeres IDesignerFilter schnittstellenimplementierung, deren Methoden überschrieben werden, können um die Attribute, Eigenschaften und Ereignisse der zugeordneten Komponente zur Entwurfszeit anzupassen.ComponentDesigner provides an empty IDesignerFilter interface implementation, whose methods can be overridden to adjust the attributes, properties and events of the associated component at design time.

Sie können einen Typ mit einen Designer Zuordnen einer DesignerAttribute.You can associate a designer with a type using a DesignerAttribute. Einen Überblick darüber, während der Entwurfszeit Verhalten anpassen, finden Sie unter Extending Design-Time Support.For an overview of customizing design-time behavior, see Extending Design-Time Support.

Die ComponentDesigner -Klasse implementiert, ein spezielles Verhalten für die Eigenschaftendeskriptoren vererbter Komponenten.The ComponentDesigner class implements a special behavior for the property descriptors of inherited components. Einen internen Typ, der mit dem Namen InheritedPropertyDescriptor wird verwendet, die standardmäßig ComponentDesigner Implementierung, die für Eigenschaften stehen, die von einer Basisklasse geerbt werden.An internal type named InheritedPropertyDescriptor is used by the default ComponentDesigner implementation to stand in for properties that are inherited from a base class. Es gibt zwei Fälle, die in denen diese Eigenschaftendeskriptoren hinzugefügt werden.There are two cases in which these property descriptors are added.

  1. Das Stammobjekt selbst, die von zurückgegeben wird das IDesignerHost.RootComponent -Eigenschaft, da Sie von ihrer Basisklasse erben.To the root object itself, which is returned by the IDesignerHost.RootComponent property, because you are inheriting from its base class.

  2. Feldern finden Sie in der Basisklasse des Stammobjekts.To fields found in the base class of the root object. Öffentliche und geschützte Felder von der Basisklasse sind in den Designer hinzugefügt, sodass sie vom Benutzer bearbeitet werden können.Public and protected fields from the base class are added to the designer so that they can be manipulated by the user.

Die InheritedPropertyDescriptor -Klasse ändert den Standardwert einer Eigenschaft, damit, dass der Standardwert der aktuelle Wert bei der Objektinstanziierung ist.The InheritedPropertyDescriptor class modifies the default value of a property, so that the default value is the current value at object instantiation. Dies ist, da die Eigenschaft aus einer anderen Instanz geerbt wird.This is because the property is inherited from another instance. Der Designer definiert, den Wert der Eigenschaft zurückgesetzt, da er auf den Wert festlegen, die von der geerbten Klasse festgelegt wurde.The designer defines resetting the property value as setting it to the value that was set by the inherited class. Dieser Wert kann von der in den Metadaten gespeicherte Standardwert abweichen.This value may differ from the default value stored in metadata.

Konstruktoren

ComponentDesigner() ComponentDesigner() ComponentDesigner() ComponentDesigner()

Initialisiert eine neue Instanz der ComponentDesigner-Klasse.Initializes a new instance of the ComponentDesigner class.

Eigenschaften

ActionLists ActionLists ActionLists ActionLists

Ruft die Entwurfszeit-Aktionslisten ab, die von der dem Designer zugeordneten Komponente unterstützt werden.Gets the design-time action lists supported by the component associated with the designer.

AssociatedComponents AssociatedComponents AssociatedComponents AssociatedComponents

Ruft die Auflistung der Komponenten ab, die der durch den Designer verwalteten Komponente zugeordnet ist.Gets the collection of components associated with the component managed by the designer.

Component Component Component Component

Ruft die Komponente ab, die von diesem Designer entworfen wird.Gets the component this designer is designing.

InheritanceAttribute InheritanceAttribute InheritanceAttribute InheritanceAttribute

Ruft ein Attribut ab, das den Vererbungstyp der zugeordneten Komponente angibt.Gets an attribute that indicates the type of inheritance of the associated component.

Inherited Inherited Inherited Inherited

Ruft einen Wert ab, der angibt, ob diese Komponente geerbt wurde.Gets a value indicating whether this component is inherited.

ParentComponent ParentComponent ParentComponent ParentComponent

Ruft die übergeordnete Komponente für diesen Designer ab.Gets the parent component for this designer.

ShadowProperties ShadowProperties ShadowProperties ShadowProperties

Ruft eine Auflistung von Eigenschaftswerten ab, die Benutzereinstellungen überschreiben.Gets a collection of property values that override user settings.

Verbs Verbs Verbs Verbs

Ruft die Entwurfszeitverben ab, die von der dem Designer zugeordneten Komponente unterstützt werden.Gets the design-time verbs supported by the component that is associated with the designer.

Methoden

Dispose() Dispose() Dispose() Dispose()

Gibt alle vom ComponentDesigner verwendeten Ressourcen frei.Releases all resources used by the ComponentDesigner.

Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Gibt die von ComponentDesigner verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the ComponentDesigner and optionally releases the managed resources.

DoDefaultAction() DoDefaultAction() DoDefaultAction() DoDefaultAction()

Erstellt eine Methodensignatur in der Quellcodedatei für das Standardereignis der Komponente und verschiebt den Cursor des Benutzers an diese Position.Creates a method signature in the source code file for the default event on the component and navigates the user's cursor to that location.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
Finalize() Finalize() Finalize() Finalize()

Versucht, durch Aufrufen von Dispose(false) Ressourcen freizugeben, bevor das Objekt durch die Garbage Collection wieder zugänglich gemacht wird.Attempts to free resources by calling Dispose(false) before the object is reclaimed by garbage collection.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Versucht, den angegebenen Diensttyp von der Entwurfsmodussite der Komponente des Designers abzurufen.Attempts to retrieve the specified type of service from the design mode site of the designer's component.

GetType() GetType() GetType() GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
Initialize(IComponent) Initialize(IComponent) Initialize(IComponent) Initialize(IComponent)

Bereitet den Designer zum Anzeigen, Bearbeiten und Entwerfen der angegebenen Komponente vor.Prepares the designer to view, edit, and design the specified component.

InitializeExistingComponent(IDictionary) InitializeExistingComponent(IDictionary) InitializeExistingComponent(IDictionary) InitializeExistingComponent(IDictionary)

Initialisiert eine vorhandene Komponente erneut.Reinitializes an existing component.

InitializeNewComponent(IDictionary) InitializeNewComponent(IDictionary) InitializeNewComponent(IDictionary) InitializeNewComponent(IDictionary)

Initialisiert eine neu erstellte Komponente.Initializes a newly created component.

InitializeNonDefault() InitializeNonDefault() InitializeNonDefault() InitializeNonDefault()

Initialisiert die Einstellungen für eine importierte Komponente, die bereits mit Einstellungen initialisiert wurde, die nicht der Standardeinstellung entsprechen.Initializes the settings for an imported component that is already initialized to settings other than the defaults.

InvokeGetInheritanceAttribute(ComponentDesigner) InvokeGetInheritanceAttribute(ComponentDesigner) InvokeGetInheritanceAttribute(ComponentDesigner) InvokeGetInheritanceAttribute(ComponentDesigner)

Ruft das InheritanceAttribute des angegebenen ComponentDesigner ab.Gets the InheritanceAttribute of the specified ComponentDesigner.

MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
OnSetComponentDefaults() OnSetComponentDefaults() OnSetComponentDefaults() OnSetComponentDefaults()

Legt die Standardeigenschaften für die Komponente fest.Sets the default properties for the component.

PostFilterAttributes(IDictionary) PostFilterAttributes(IDictionary) PostFilterAttributes(IDictionary) PostFilterAttributes(IDictionary)

Ermöglicht einem Designer das Ändern oder Entfernen von Elementen aus dem Satz von Attributen, der über einen TypeDescriptor verfügbar gemacht wird.Allows a designer to change or remove items from the set of attributes that it exposes through a TypeDescriptor.

PostFilterEvents(IDictionary) PostFilterEvents(IDictionary) PostFilterEvents(IDictionary) PostFilterEvents(IDictionary)

Ermöglicht einem Designer das Ändern oder Entfernen von Elementen aus dem Satz von Ereignissen, der über einen TypeDescriptor verfügbar gemacht wird.Allows a designer to change or remove items from the set of events that it exposes through a TypeDescriptor.

PostFilterProperties(IDictionary) PostFilterProperties(IDictionary) PostFilterProperties(IDictionary) PostFilterProperties(IDictionary)

Ermöglicht einem Designer das Ändern oder Entfernen von Elementen aus dem Satz von Eigenschaften, der über einen TypeDescriptor verfügbar gemacht wird.Allows a designer to change or remove items from the set of properties that it exposes through a TypeDescriptor.

PreFilterAttributes(IDictionary) PreFilterAttributes(IDictionary) PreFilterAttributes(IDictionary) PreFilterAttributes(IDictionary)

Ermöglicht einem Designer das Hinzufügen zu dem Satz von Attributen, der über einen TypeDescriptor verfügbar gemacht wird.Allows a designer to add to the set of attributes that it exposes through a TypeDescriptor.

PreFilterEvents(IDictionary) PreFilterEvents(IDictionary) PreFilterEvents(IDictionary) PreFilterEvents(IDictionary)

Ermöglicht einem Designer ein Hinzufügen zu dem Satz von Ereignissen, der durch einen TypeDescriptor verfügbar gemacht wird.Allows a designer to add to the set of events that it exposes through a TypeDescriptor.

PreFilterProperties(IDictionary) PreFilterProperties(IDictionary) PreFilterProperties(IDictionary) PreFilterProperties(IDictionary)

Ermöglicht einem Designer ein Hinzufügen zu dem Satz von Eigenschaften, der durch einen TypeDescriptor verfügbar gemacht wird.Allows a designer to add to the set of properties that it exposes through a TypeDescriptor.

RaiseComponentChanged(MemberDescriptor, Object, Object) RaiseComponentChanged(MemberDescriptor, Object, Object) RaiseComponentChanged(MemberDescriptor, Object, Object) RaiseComponentChanged(MemberDescriptor, Object, Object)

Benachrichtigt IComponentChangeService darüber, dass diese Komponente geändert wurde.Notifies the IComponentChangeService that this component has been changed.

RaiseComponentChanging(MemberDescriptor) RaiseComponentChanging(MemberDescriptor) RaiseComponentChanging(MemberDescriptor) RaiseComponentChanging(MemberDescriptor)

Benachrichtigt IComponentChangeService darüber, dass diese Komponente gerade geändert wird.Notifies the IComponentChangeService that this component is about to be changed.

ToString() ToString() ToString() ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)

Explizite Schnittstellenimplementierungen

IDesignerFilter.PostFilterAttributes(IDictionary) IDesignerFilter.PostFilterAttributes(IDictionary) IDesignerFilter.PostFilterAttributes(IDictionary) IDesignerFilter.PostFilterAttributes(IDictionary)

Eine Beschreibung dieses Members finden Sie unter der PostFilterAttributes(IDictionary)-Methode.For a description of this member, see the PostFilterAttributes(IDictionary) method.

IDesignerFilter.PostFilterEvents(IDictionary) IDesignerFilter.PostFilterEvents(IDictionary) IDesignerFilter.PostFilterEvents(IDictionary) IDesignerFilter.PostFilterEvents(IDictionary)

Eine Beschreibung dieses Members finden Sie unter der PostFilterEvents(IDictionary)-Methode.For a description of this member, see the PostFilterEvents(IDictionary) method.

IDesignerFilter.PostFilterProperties(IDictionary) IDesignerFilter.PostFilterProperties(IDictionary) IDesignerFilter.PostFilterProperties(IDictionary) IDesignerFilter.PostFilterProperties(IDictionary)

Eine Beschreibung dieses Members finden Sie unter der PostFilterProperties(IDictionary)-Methode.For a description of this member, see the PostFilterProperties(IDictionary) method.

IDesignerFilter.PreFilterAttributes(IDictionary) IDesignerFilter.PreFilterAttributes(IDictionary) IDesignerFilter.PreFilterAttributes(IDictionary) IDesignerFilter.PreFilterAttributes(IDictionary)

Eine Beschreibung dieses Members finden Sie unter der PreFilterAttributes(IDictionary)-Methode.For a description of this member, see the PreFilterAttributes(IDictionary) method.

IDesignerFilter.PreFilterEvents(IDictionary) IDesignerFilter.PreFilterEvents(IDictionary) IDesignerFilter.PreFilterEvents(IDictionary) IDesignerFilter.PreFilterEvents(IDictionary)

Eine Beschreibung dieses Members finden Sie unter der PreFilterEvents(IDictionary)-Methode.For a description of this member, see the PreFilterEvents(IDictionary) method.

IDesignerFilter.PreFilterProperties(IDictionary) IDesignerFilter.PreFilterProperties(IDictionary) IDesignerFilter.PreFilterProperties(IDictionary) IDesignerFilter.PreFilterProperties(IDictionary)

Eine Beschreibung dieses Members finden Sie unter der PreFilterProperties(IDictionary)-Methode.For a description of this member, see the PreFilterProperties(IDictionary) method.

ITreeDesigner.Children ITreeDesigner.Children ITreeDesigner.Children ITreeDesigner.Children

Eine Beschreibung dieses Members finden Sie unter der Children-Eigenschaft.For a description of this member, see the Children property.

ITreeDesigner.Parent ITreeDesigner.Parent ITreeDesigner.Parent ITreeDesigner.Parent

Eine Beschreibung dieses Members finden Sie unter der Parent-Eigenschaft.For a description of this member, see the Parent property.

Gilt für:

Siehe auch