Aracılığıyla paylaş


Bağlı Denetimler

Özel grafik işleme söz konusu olduğunda, kullanıcı denetimini oluşturan denetimler veya bunlar terimiyle bağlantılı denetimler nispeten esnek değildir. Tüm Windows Forms denetimleri kendi işlemelerini kendi OnPaint yöntemleriyle işler. Bu yöntem korunduğundan, geliştirici tarafından erişilebilir değildir ve bu nedenle denetim boyandığında yürütülmesi engellenemez. Ancak bu, kurucu denetimlerin görünümünü etkilemek için kod ekleyemeyeceğiniz anlamına gelmez. Ek işleme bir olay işleyicisi eklenerek gerçekleştirilebilir. Örneğin, adlı MyButtonbir düğmeyle bir yazdığını UserControl varsayalım. tarafından Buttonsağlananların ötesinde ek işlemeye sahip olmak istiyorsanız, kullanıcı denetiminize aşağıdakine benzer bir kod eklersiniz:

Public Sub MyPaint(ByVal sender as Object, e as PaintEventArgs) Handles _  
   MyButton.Paint  
   'Additional rendering code goes here  
End Sub  
// Add the event handler to the button's Paint event.  
MyButton.Paint +=
   new System.Windows.Forms.PaintEventHandler (this.MyPaint);  
// Create the custom painting method.  
protected void MyPaint (object sender,
System.Windows.Forms.PaintEventArgs e)  
{  
   // Additional rendering code goes here.  
}  

Dekont

gibi TextBoxbazı Windows Forms denetimleri doğrudan Windows tarafından boyanabilir. Bu örneklerde yöntemi OnPaint hiçbir zaman çağrılmaz ve bu nedenle yukarıdaki örnek hiçbir zaman çağrılmaz.

Bu, olay her yürütülürken MyButton.Paint yürütülen bir yöntem oluşturur ve böylece denetiminize ek grafik gösterimi ekler. Bunun yürütülmesini MyButton.OnPaintengellemediğini ve bu nedenle genellikle bir düğme tarafından gerçekleştirilen tüm tablonun özel tablonuza ek olarak yine de gerçekleştirileceğini unutmayın. GDI+ teknolojisi ve özel işleme hakkında ayrıntılı bilgi için bkz . GDI+ ile Grafik Görüntüleri Oluşturma. Denetiminizin benzersiz bir gösterimine sahip olmak istiyorsanız, en iyi eylem rotanız devralınan bir denetim oluşturmak ve bunun için özel işleme kodu yazmaktır. Ayrıntılar için bkz . Kullanıcı Tarafından Çizilen Denetimler.

Ayrıca bkz.