Bir UserControl nesnesinin denetim kapsayıcısı tasarım zamanı olarak davranmasını sağlamak için Visual C# kullanma

Bu makalede, UserControl nesnesini windows formuna ekledikten sonra tasarım zamanında bir UserControl nesnesinin denetim kapsayıcısı olarak nasıl davranacağı hakkında bilgi sağlanır.

Orijinal ürün sürümü: Visual C#
Özgün KB numarası: 813450

Özet

Bu makale, Microsoft .NET Framework Sınıf Kitaplığı ad alanını System.ComponentModelifade eder.

Bu adım adım makalede, UserControl nesnesini bir Windows Formuna yerleştirdikten sonra tasarım zamanında bir denetim kapsayıcısı olarak nasıl davranacağı açıklanır. Denetimi UserControl'e sürüklemek istediğiniz durumlar olabilir. Bunu yapmak için UserControl bir denetim kapsayıcısı gibi davranmalıdır.

Varsayılan olarak, bir UserControl nesnesi yalnızca denetimi oluşturduğunuzda bir denetim kapsayıcısı gibi davranabilir. UserControl ana bilgisayarını, UserControl'u bir Windows Formu'na yerleştirdikten sonra bir kurucu denetim haline getirmek için, UserControl'ün varsayılan tasarımcısını değiştirmeniz gerekir. Bir bileşen için tasarım zamanı hizmetleri uygulamak için ad alanının sınıfını System.ComponentModel kullanınDesignerAttribute. , DesignerAttribute sınıf bildiriminden önce gelir. DesignerAttribute ve designerBaseType parametrelerini geçirerek designerTypeName öğesini başlatın.

designerTypeName , tasarım zamanı hizmetleri sağlayan tasarımcı türünün tam adıdır. parametresinin System.Windows.Forms.Design.ParentControlDesigner ve System.Design birleşimini designerTypeName geçirin. sınıfı, ParentControlDesigner UserControl için tasarım zamanı davranışını genişletir.

designerBaseType tasarımcı için temel sınıfın adıdır. Tasarım zamanı hizmetleri için kullanılan sınıfın IDesigner arabirimini uygulaması gerekir.

UserControl'u tasarım zamanı denetim kapsayıcısı olarak oluşturma

  1. Yeni bir Visual C# Windows Denetim Kitaplığı projesi oluşturun. Bunu yapmak için şu adımları uygulayın:

    1. Visual Studio'yu başlatın.
    2. Dosya menüsünde, Yeni'nin üzerine gelin ve Proje'ye tıklayın.
    3. Proje Türleri'nin altında Visual C# öğesine tıklayın ve ardından Şablonlar'ın altındaki Denetim Kitaplığı'nı Windows Forms tıklayın.
  2. Projeyi ContainerUserControl olarak adlandırın. Varsayılan olarak , UserControl1.cs oluşturulur.

  3. Çözüm Gezgini'da UserControl1.cs sağ tıklayın ve ardından Kodu Görüntüle'ye tıklayın.

  4. Bildirimler bölümüne aşağıdaki kodu ekleyin:

    using System.ComponentModel.Design;
    
  5. Özniteliğini System.ComponentModel.DesignerAttribute denetime aşağıdaki gibi uygulayın:

    [Designer("System.Windows.Forms.Design.ParentControlDesigner, System.Design", typeof(IDesigner))]
    public class UserControl1 : System.Windows.Forms.UserControl
    {
        ...
    }
    
  6. Derleme menüsünde Çözüm Oluştur'a tıklayın.

UserControl'i test edin

  1. Yeni bir Visual C# projesi oluşturun. Bunu yapmak için şu adımları uygulayın:

    1. Visual Studio'yu başlatın.
    2. Dosya menüsünde, Yeni'nin üzerine gelin ve Proje'ye tıklayın.
    3. Proje Türleri'nin altında Visual C# öğesine tıklayın ve ardından Şablonlar'ın altında uygulama Windows Forms'e tıklayın. Varsayılan olarak , Form1.cs oluşturulur.
  2. UserControl1 denetimini araç kutusuna ekleyin.

    1. Araçlar menüsünde Araç Kutusu Öğelerini Seç'e tıklayın.
    2. .NET Framework Bileşenleri sekmesinde Gözat'a tıklayın.
    3. Dosya Aç kutusunda, UserControl denetimini oluştururken oluşturulan DLL'yi bulun.
  3. UserControl1'i araç kutusundan (Windows Forms altında) Form1.cs sürükleyin.

  4. Araç kutusundan Bir Düğme denetimini UserControl1'e sürükleyin.

Not

UserControl1, Düğme denetimi için denetim kapsayıcısı olarak davranır.

Başvurular

Daha fazla bilgi için bkz. Microsoft Web sitesi: ParentControlDesigner Sınıfı.