ComponentDesigner Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Breidt het gedrag van de ontwerpmodus van een onderdeel uit.
public ref class ComponentDesigner : IDisposable, System::ComponentModel::Design::IDesigner, System::ComponentModel::Design::IDesignerFilter
public ref class ComponentDesigner : IDisposable, System::ComponentModel::Design::IComponentInitializer, System::ComponentModel::Design::IDesignerFilter, System::ComponentModel::Design::ITreeDesigner
public class ComponentDesigner : IDisposable, System.ComponentModel.Design.IDesigner, System.ComponentModel.Design.IDesignerFilter
public class ComponentDesigner : IDisposable, System.ComponentModel.Design.IComponentInitializer, System.ComponentModel.Design.IDesignerFilter, System.ComponentModel.Design.ITreeDesigner
type ComponentDesigner = class
interface IDesigner
interface IDisposable
interface IDesignerFilter
type ComponentDesigner = class
interface ITreeDesigner
interface IDesigner
interface IDisposable
interface IDesignerFilter
interface IComponentInitializer
Public Class ComponentDesigner
Implements IDesigner, IDesignerFilter, IDisposable
Public Class ComponentDesigner
Implements IComponentInitializer, IDesignerFilter, IDisposable, ITreeDesigner
- Overname
-
ComponentDesigner
- Afgeleid
- Implementeringen
Voorbeelden
Het volgende codevoorbeeld bevat een voorbeeld ComponentDesigner van een implementatie en een voorbeeldonderdeel dat is gekoppeld aan de ontwerpfunctie. De ontwerpfunctie implementeert een onderdrukking van de Initialize methode waarmee de basismethode Initialize wordt aangeroepen, een onderdrukking van de DoDefaultAction methode die wordt MessageBox weergegeven wanneer het onderdeel wordt gedubbeld en een onderdrukking van de Verbs eigenschapstoegangsfunctie die een aangepaste DesignerVerb menuopdracht levert aan het snelmenu voor het onderdeel.
#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.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
' 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
' 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
' 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
End Class
' 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
End Class
End Namespace 'ExampleComponent
Opmerkingen
De ComponentDesigner basisontwerperklasse biedt een eenvoudige ontwerper die het gedrag van een gekoppeld onderdeel in de ontwerpmodus kan uitbreiden.
ComponentDesigner biedt een lege IDesignerFilter interface-implementatie, waarvan de methoden kunnen worden overschreven om de kenmerken, eigenschappen en gebeurtenissen van het bijbehorende onderdeel tijdens het ontwerp aan te passen.
U kunt een ontwerper koppelen aan een type met behulp van een DesignerAttribute. Zie Uitbreiden Design-Time Ondersteuning voor een overzicht van het aanpassen van ontwerptijdgedrag.
De ComponentDesigner klasse implementeert een speciaal gedrag voor de eigenschapsdescriptors van overgenomen onderdelen. Een intern type met de naam InheritedPropertyDescriptor wordt gebruikt door de standaard ComponentDesigner implementatie om in te staan voor eigenschappen die worden overgenomen van een basisklasse. Er zijn twee gevallen waarin deze eigenschapsdescriptors worden toegevoegd.
Naar het hoofdobject zelf, dat wordt geretourneerd door de IDesignerHost.RootComponent eigenschap, omdat u de basisklasse overneemt.
Naar velden in de basisklasse van het hoofdobject. Openbare en beveiligde velden van de basisklasse worden toegevoegd aan de ontwerpfunctie, zodat ze door de gebruiker kunnen worden bewerkt.
De InheritedPropertyDescriptor klasse wijzigt de standaardwaarde van een eigenschap, zodat de standaardwaarde de huidige waarde is bij het instantiëeren van objecten. Dit komt doordat de eigenschap wordt overgenomen van een ander exemplaar. De ontwerpfunctie definieert het opnieuw instellen van de eigenschapswaarde als instelling voor de waarde die is ingesteld door de overgenomen klasse. Deze waarde kan afwijken van de standaardwaarde die is opgeslagen in metagegevens.
Constructors
| Name | Description |
|---|---|
| ComponentDesigner() |
Initialiseert een nieuw exemplaar van de ComponentDesigner klasse. |
Eigenschappen
| Name | Description |
|---|---|
| ActionLists |
Hiermee haalt u de ontwerptijdactielijsten op die worden ondersteund door het onderdeel dat is gekoppeld aan de ontwerpfunctie. |
| AssociatedComponents |
Hiermee haalt u de verzameling onderdelen op die zijn gekoppeld aan het onderdeel dat wordt beheerd door de ontwerper. |
| Component |
Hiermee haalt u het onderdeel op dat deze ontwerpfunctie ontwerpt. |
| InheritanceAttribute |
Hiermee wordt een kenmerk opgehaald dat het type overname van het gekoppelde onderdeel aangeeft. |
| Inherited |
Hiermee wordt een waarde opgehaald die aangeeft of dit onderdeel is overgenomen. |
| ParentComponent |
Hiermee haalt u het bovenliggende onderdeel voor deze ontwerpfunctie op. |
| ShadowProperties |
Hiermee haalt u een verzameling eigenschapswaarden op waarmee gebruikersinstellingen worden overschreven. |
| Verbs |
Hiermee haalt u de ontwerptijdwoorden op die worden ondersteund door het onderdeel dat is gekoppeld aan de ontwerpfunctie. |
Methoden
| Name | Description |
|---|---|
| Dispose() |
Alle resources die worden gebruikt door de ComponentDesigner. |
| Dispose(Boolean) |
Publiceert de niet-beheerde resources die worden gebruikt door de ComponentDesigner beheerde resources en brengt eventueel de beheerde resources vrij. |
| DoDefaultAction() |
Hiermee maakt u een methodehandtekening in het broncodebestand voor de standaard gebeurtenis in het onderdeel en navigeert u door de cursor van de gebruiker naar die locatie. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| Finalize() |
Probeert resources vrij te maken door aan te roepen |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetService(Type) |
Hiermee wordt geprobeerd het opgegeven type service op te halen van de ontwerpmodussite van het onderdeel van de ontwerper. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| Initialize(IComponent) |
Bereidt de ontwerpfunctie voor om het opgegeven onderdeel weer te geven, te bewerken en te ontwerpen. |
| InitializeExistingComponent(IDictionary) |
Een bestaand onderdeel opnieuw initialiseren. |
| InitializeNewComponent(IDictionary) |
Initialiseert een nieuw gemaakt onderdeel. |
| InitializeNonDefault() |
Verouderd.
Initialiseert de instellingen voor een geïmporteerd onderdeel dat al is geïnitialiseerd naar andere instellingen dan de standaardinstellingen. |
| InvokeGetInheritanceAttribute(ComponentDesigner) |
Hiermee haalt u de InheritanceAttribute opgegeven ComponentDesigner. |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnSetComponentDefaults() |
Verouderd.
Hiermee stelt u de standaardeigenschappen voor het onderdeel in. |
| PostFilterAttributes(IDictionary) |
Hiermee kan een ontwerper items wijzigen of verwijderen uit de set kenmerken die worden weergegeven via een TypeDescriptor. |
| PostFilterEvents(IDictionary) |
Hiermee kan een ontwerper items wijzigen of verwijderen uit de reeks gebeurtenissen die worden weergegeven via een TypeDescriptor. |
| PostFilterProperties(IDictionary) |
Hiermee kan een ontwerper items wijzigen of verwijderen uit de set eigenschappen die deze beschikbaar maakt via een TypeDescriptor. |
| PreFilterAttributes(IDictionary) |
Hiermee kan een ontwerper toevoegen aan de set kenmerken die worden weergegeven via een TypeDescriptor. |
| PreFilterEvents(IDictionary) |
Hiermee kan een ontwerper toevoegen aan de set gebeurtenissen die worden weergegeven via een TypeDescriptor. |
| PreFilterProperties(IDictionary) |
Hiermee kan een ontwerper toevoegen aan de set eigenschappen die deze beschikbaar maakt via een TypeDescriptor. |
| RaiseComponentChanged(MemberDescriptor, Object, Object) |
Hiermee wordt aangegeven IComponentChangeService dat dit onderdeel is gewijzigd. |
| RaiseComponentChanging(MemberDescriptor) |
Hiermee wordt aangegeven IComponentChangeService dat dit onderdeel binnenkort wordt gewijzigd. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
Expliciete interface-implementaties
| Name | Description |
|---|---|
| IDesignerFilter.PostFilterAttributes(IDictionary) |
Zie de PostFilterAttributes(IDictionary) methode voor een beschrijving van dit lid. |
| IDesignerFilter.PostFilterEvents(IDictionary) |
Zie de PostFilterEvents(IDictionary) methode voor een beschrijving van dit lid. |
| IDesignerFilter.PostFilterProperties(IDictionary) |
Zie de PostFilterProperties(IDictionary) methode voor een beschrijving van dit lid. |
| IDesignerFilter.PreFilterAttributes(IDictionary) |
Zie de PreFilterAttributes(IDictionary) methode voor een beschrijving van dit lid. |
| IDesignerFilter.PreFilterEvents(IDictionary) |
Zie de PreFilterEvents(IDictionary) methode voor een beschrijving van dit lid. |
| IDesignerFilter.PreFilterProperties(IDictionary) |
Zie de PreFilterProperties(IDictionary) methode voor een beschrijving van dit lid. |
| ITreeDesigner.Children |
Zie de Children eigenschap voor een beschrijving van dit lid. |
| ITreeDesigner.Parent |
Zie de Parent eigenschap voor een beschrijving van dit lid. |