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.ComponentModel
ifade 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
Yeni bir Visual C# Windows Denetim Kitaplığı projesi oluşturun. Bunu yapmak için şu adımları uygulayın:
- Visual Studio'yu başlatın.
- Dosya menüsünde, Yeni'nin üzerine gelin ve Proje'ye tıklayın.
- 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.
Projeyi ContainerUserControl olarak adlandırın. Varsayılan olarak , UserControl1.cs oluşturulur.
Çözüm Gezgini'da UserControl1.cs sağ tıklayın ve ardından Kodu Görüntüle'ye tıklayın.
Bildirimler bölümüne aşağıdaki kodu ekleyin:
using System.ComponentModel.Design;
Ö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 { ... }
Derleme menüsünde Çözüm Oluştur'a tıklayın.
UserControl'i test edin
Yeni bir Visual C# projesi oluşturun. Bunu yapmak için şu adımları uygulayın:
- Visual Studio'yu başlatın.
- Dosya menüsünde, Yeni'nin üzerine gelin ve Proje'ye tıklayın.
- 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.
UserControl1 denetimini araç kutusuna ekleyin.
- Araçlar menüsünde Araç Kutusu Öğelerini Seç'e tıklayın.
- .NET Framework Bileşenleri sekmesinde Gözat'a tıklayın.
- Dosya Aç kutusunda, UserControl denetimini oluştururken oluşturulan DLL'yi bulun.
UserControl1'i araç kutusundan (Windows Forms altında) Form1.cs sürükleyin.
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ı.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin