2011-07-12 21 views

cevap

11

Bak, here is your answer. Diğer bir deyişle, bir mülke Category özniteliğini kullanın. Ayrıca, burada yararlı bir makalenin (Custom Design-time Control Features in Visual Studio .NET) bir bağlantısı da bulunmaktadır. Makale oldukça eski (2003), ancak daha yeni olan bir resmi bulamadım. Ayrıca, başka bir özelliğe ihtiyacınız olup olmadığını bilmiyorum, ama sanırım başlamak için iyi bir yer olmalı.

Bunu denedim ve benim için çalışıyor:

public partial class UserControl1 : UserControl 
{ 
    public UserControl1() 
    { 
     InitializeComponent(); 
    } 

    [Category("MyOwn")] 
    public String MyProperty { get; set; } 
} 

Example1

Not, ancak, kullanıcı kontrolünün bir tasarımcı açıkken Mülklerinizi göremiyorum. Özel özellikler, yalnızca kullanıcı denetiminiz başka bir formun/denetimin bir parçası olduğunda ve seçildiğinde, tasarımcının özellik kılavuzunda görünür olacaktır. Denetiminizi tasarlarken, bu özelliklere tasarımcı erişiminiz yoktur. Yukarıdaki resmime bak. Form, bir kullanıcı kontrolü içerir ve daha sonra bir kullanıcı kontrolü seçilir. Daha sonra özellik özellik ızgarada görülebilir.

Ayrıca Sınıflandırılmış PropertyGrid seçili olduğundan emin olun: Categorized view

+0

Sevgili, senin çabuk yanıt için teşekkür ederiz. Bunu zaten denedim ama kullanmadım. [Kategori()] Sağır kategorileri ile eklediğimde iyi çalışıyor ama kendi kategorimi kullanmaya çalıştığımda (bu [Kategori ("Özel")]) gibi çalışmıyor. VS2008 kullanıyorum. – Shahzad

+0

Kategorize modda (propertygrid'de) bile değil misiniz? –

+0

Cevabımı güncelledim. VS2010'u kullanıyorum, bu yüzden bunu 08'de deneyemem, ama bir farkın olması gerektiğini düşünmüyorum. Kodunuzu istenilen özellik için gönderir misiniz? Ayrıca, mülkleriniz hangi tipte? –

İlgili konular