ComponentDesigner Sınıf

Tanım

Bir bileşenin tasarım modu davranışını genişletir.

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
Devralma
ComponentDesigner
Türetilmiş
Uygulamalar

Örnekler

Aşağıdaki kod örneği, örnek ComponentDesigner bir uygulama ve tasarımcıyla ilişkilendirilmiş örnek bir bileşen sağlar. Tasarımcı, temel Initialize yöntemi çağıran yöntemin Initialize geçersiz kılmasını, bileşene çift tıklandığında öğesini MessageBox görüntüleyen yöntemin geçersiz kılmasını DoDefaultAction ve bileşenin Verbs kısayol menüsüne özel DesignerVerb bir menü komutu sağlayan özellik erişimcisinin geçersiz kılmasını uygular.

#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

Açıklamalar

ComponentDesigner Temel tasarımcı sınıfı, tasarım modunda ilişkili bir bileşenin davranışını genişletebilen basit bir tasarımcı sağlar.

ComponentDesigner , tasarım zamanında ilişkili bileşenin özniteliklerini, özelliklerini ve olaylarını ayarlamak için yöntemleri geçersiz kılınabilen boş IDesignerFilter bir arabirim uygulaması sağlar.

kullanarak DesignerAttributebir tasarımcıyı bir türle ilişkilendirebilirsiniz. Tasarım zamanı davranışını özelleştirmeye genel bakış için bkz. Design-Time Desteğini Genişletme.

sınıfı, ComponentDesigner devralınan bileşenlerin özellik tanımlayıcıları için özel bir davranış uygular. adlı InheritedPropertyDescriptor iç tür, varsayılan ComponentDesigner uygulama tarafından temel sınıftan devralınan özelliklerin içinde durmak için kullanılır. Bu özellik tanımlayıcılarının eklendiği iki durum vardır.

  1. Temel sınıfından devraldığınız için özelliği tarafından IDesignerHost.RootComponent döndürülen kök nesnenin kendisine.

  2. Kök nesnenin temel sınıfında bulunan alanlara. Temel sınıftaki genel ve korumalı alanlar, kullanıcı tarafından işlenebilmeleri için tasarımcıya eklenir.

sınıfı InheritedPropertyDescriptor bir özelliğin varsayılan değerini değiştirir, böylece varsayılan değer nesne örneği oluşturma sırasında geçerli değerdir. Bunun nedeni özelliğin başka bir örnekten devralınmış olmasıdır. Tasarımcı, özellik değerini devralınan sınıf tarafından ayarlanan değer olarak sıfırlamayı tanımlar. Bu değer meta verilerde depolanan varsayılan değerden farklı olabilir.

Oluşturucular

ComponentDesigner()

ComponentDesigner sınıfının yeni bir örneğini başlatır.

Özellikler

ActionLists

Tasarımcıyla ilişkilendirilmiş bileşen tarafından desteklenen tasarım zamanı eylem listelerini alır.

AssociatedComponents

Tasarımcı tarafından yönetilen bileşenle ilişkili bileşenlerin koleksiyonunu alır.

Component

Bu tasarımcının tasarlıyor olduğu bileşeni alır.

InheritanceAttribute

İlişkili bileşenin devralma türünü gösteren bir özniteliği alır.

Inherited

Bu bileşenin devralınıp devralınmadığını belirten bir değer alır.

ParentComponent

Bu tasarımcının üst bileşenini alır.

SetTextualDefaultProperty

Bir bileşenin tasarım modu davranışını genişletir.

ShadowProperties

Kullanıcı ayarlarını geçersiz kılan özellik değerleri koleksiyonunu alır.

Verbs

Tasarımcıyla ilişkili bileşen tarafından desteklenen tasarım zamanı fiillerini alır.

Yöntemler

Dispose()

ComponentDesigner tarafından kullanılan tüm kaynakları serbest bırakır.

Dispose(Boolean)

ComponentDesigner tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak serbest bırakır.

DoDefaultAction()

Bileşendeki varsayılan olay için kaynak kod dosyasında bir yöntem imzası oluşturur ve kullanıcının imlecini bu konuma gider.

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Finalize()

Nesne çöp toplama tarafından geri kazanılmadan önce çağırarak Dispose(false) kaynakları boşaltmaya çalışır.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetService(Type)

Tasarımcının bileşeninin tasarım modu sitesinden belirtilen hizmet türünü almaya çalışır.

GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
Initialize(IComponent)

Tasarımcıyı belirtilen bileşeni görüntülemeye, düzenlemeye ve tasarlamaya hazırlar.

InitializeExistingComponent(IDictionary)

Mevcut bir bileşeni yeniden başlatıyor.

InitializeNewComponent(IDictionary)

Yeni oluşturulan bir bileşeni başlatır.

InitializeNonDefault()
Geçersiz.
Geçersiz.

Varsayılanlar dışındaki ayarlarda zaten başlatılmış olan içeri aktarılan bir bileşenin ayarlarını başlatır.

InvokeGetInheritanceAttribute(ComponentDesigner)

InheritanceAttribute Belirtilen ComponentDesigneröğesinin değerini alır.

MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnSetComponentDefaults()
Geçersiz.
Geçersiz.

Bileşenin varsayılan özelliklerini ayarlar.

PostFilterAttributes(IDictionary)

Tasarımcının aracılığıyla kullanıma verdiği TypeDescriptoröznitelik kümesindeki öğeleri değiştirmesine veya kaldırmasına izin verir.

PostFilterEvents(IDictionary)

Tasarımcının aracılığıyla kullanıma verdiği TypeDescriptorolay kümesindeki öğeleri değiştirmesine veya kaldırmasına izin verir.

PostFilterProperties(IDictionary)

Tasarımcının aracılığıyla kullanıma verdiği TypeDescriptorözellik kümesindeki öğeleri değiştirmesine veya kaldırmasına izin verir.

PreFilterAttributes(IDictionary)

Tasarımcının aracılığıyla TypeDescriptorkullanıma verdiği öznitelik kümesine eklemesine izin verir.

PreFilterEvents(IDictionary)

Tasarımcının aracılığıyla TypeDescriptorkullanıma verdiği olay kümesine eklemesine izin verir.

PreFilterProperties(IDictionary)

Tasarımcının aracılığıyla TypeDescriptorkullanıma verdiği özellikler kümesine eklemesine izin verir.

RaiseComponentChanged(MemberDescriptor, Object, Object)

Bu bileşenin IComponentChangeService değiştirildiğini bildirir.

RaiseComponentChanging(MemberDescriptor)

Bu bileşenin IComponentChangeService değiştirilmek üzere olduğunu bildirir.

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Belirtik Arabirim Kullanımları

IDesignerFilter.PostFilterAttributes(IDictionary)

Bu üyenin açıklaması için yöntemine PostFilterAttributes(IDictionary) bakın.

IDesignerFilter.PostFilterEvents(IDictionary)

Bu üyenin açıklaması için yöntemine PostFilterEvents(IDictionary) bakın.

IDesignerFilter.PostFilterProperties(IDictionary)

Bu üyenin açıklaması için yöntemine PostFilterProperties(IDictionary) bakın.

IDesignerFilter.PreFilterAttributes(IDictionary)

Bu üyenin açıklaması için yöntemine PreFilterAttributes(IDictionary) bakın.

IDesignerFilter.PreFilterEvents(IDictionary)

Bu üyenin açıklaması için yöntemine PreFilterEvents(IDictionary) bakın.

IDesignerFilter.PreFilterProperties(IDictionary)

Bu üyenin açıklaması için yöntemine PreFilterProperties(IDictionary) bakın.

ITreeDesigner.Children

Bu üyenin açıklaması için özelliğine Children bakın.

ITreeDesigner.Parent

Bu üyenin açıklaması için özelliğine Parent bakın.

Şunlara uygulanır

Ayrıca bkz.