Nasıl yapılır: Windows Forms'ta ToolStrip Denetimi için Özel Oluşturucu Oluşturma ve Ayarlama
ToolStrip denetimler, temalara ve stiller için kolay destek sağlar. Özelliği veya ToolStripManager.Renderer özelliği özel işleyici olarak ayarlayarak ToolStrip.Renderer tamamen özel görünüm ve davranış (görünüm ve his) elde edebilirsiniz.
Her bir ToolStrip, , ContextMenuStripMenuStripveya StatusStrip denetimine işleyiciler atayabilir veya özelliğini olarak ayarlayarak tüm nesneleri etkilemek ToolStrip.RenderMode için ToolStripRenderMode.ManagerRenderModeözelliğini kullanabilirsinizRenderer.
Dekont
RenderModeyalnızca değeri ToolStrip.Renderer değilse null
döndürürCustom.
Özel işleyici oluşturmak için
Sınıfını ToolStripRenderer genişletin.
Uygun Açık... üyelerini geçersiz kılarak istenen özel işlemeyi uygulama
Public Class RedTextRenderer Inherits System.Windows.Forms.ToolStripRenderer Protected Overrides Sub OnRenderItemText(ByVal e As _ ToolStripItemTextRenderEventArgs) e.TextColor = Color.Red e.TextFont = New Font("Helvetica", 7, FontStyle.Bold) MyBase.OnRenderItemText(e) End Sub End Class
public class RedTextRenderer : _ System.Windows.Forms.ToolStripRenderer { protected override void _ OnRenderItemText(ToolStripItemTextRenderEventArgs e) { e.TextColor = Color.Red; e.TextFont = new Font("Helvetica", 7, FontStyle.Bold); base.OnRenderItemText(e); } }
Özel işleyiciyi geçerli işleyici olarak ayarlamak için
Bir ToolStripiçin özel işleyiciyi ayarlamak için özelliğini özel işleyici olarak ayarlayın ToolStrip.Renderer .
toolStrip1.Renderer = New RedTextRenderer()
toolStrip1.Renderer = new RedTextRenderer();
Veya uygulamanızda yer alan tüm ToolStrip sınıflar için özel işleyiciyi ayarlamak için: ToolStripManager.Renderer özelliğini özel işleyici olarak ayarlayın ve özelliğini olarak ManagerRenderModeayarlayınRenderMode.
toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode ToolStripManager.Renderer = New RedTextRenderer()
toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode; ToolStripManager.Renderer = new RedTextRenderer();
Ayrıca bkz.
.NET Desktop feedback