Como: Custom desenhar um controle ToolStrip
O ToolStrip controles têm procedimentos associados a classes de (pintura) de processamento:
ToolStripSystemRendererfornece a aparência e o estilo do seu sistema operacional.
ToolStripProfessionalRendererfornece a aparência e o estilo de Microsoft Office.
ToolStripRendereré a classe base abstrata para outras classes de processamento de dois.
Para desenhar de personalizado (também conhecido como desenho proprietário) um ToolStrip, você pode substituir uma das classes renderizador e alterar um aspecto da lógica de renderização.
Para obter mais informações, consulte Exemplo de controle do usuário de desenho personalizada e Exemplo de controle do usuário de desenho personalizada.
Os procedimentos a seguir descrevem vários aspectos do desenho personalizado.
Para alternar entre os renderizadores fornecidos
Definir o RenderMode propriedade para o ToolStripRenderMode valor desejar.
Com ManagerRenderMode, estática RenderMode determina o renderizador de seu aplicativo. Os outros valores de ToolStripRenderMode são Custom, Professional, e System.
Para alterar as bordas da Microsoft Office–style de reta
- Substituir ToolStripProfessionalRenderer.OnRenderToolStripBorder, mas não chame a classe de base.
Observação |
---|
Há uma versão desse método para ToolStripRenderer, ToolStripSystemRenderer, e ToolStripProfessionalRenderer. |
Para alterar o ProfessionalColorTable
Substituir ProfessionalColorTable e alterar as cores desejar.
[Visual Basic]
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As _ System.EventArgs) Handles Me.Load Dim t As MyColorTable = New MyColorTable ToolStrip1.Renderer = New ToolStripProfessionalRenderer(t) End Sub Class MyColorTable Inherits ProfessionalColorTable Public Overrides ReadOnly Property ButtonPressedGradientBegin() As Color Get Return Color.Red End Get End Property Public Overrides ReadOnly Property ButtonPressedGradientMiddle() _ As System.Drawing.Color Get Return Color.Blue End Get End Property Public Overrides ReadOnly Property ButtonPressedGradientEnd() _ As System.Drawing.Color Get Return Color.Green End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientBegin() _ As Color Get Return Color.Yellow End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientMiddle() As System.Drawing.Color Get Return Color.Orange End Get End Property Public Overrides ReadOnly Property ButtonSelectedGradientEnd() _ As System.Drawing.Color Get Return Color.Violet End Get End Property End Class
Para alterar o processamento para todos os controles ToolStrip em seu aplicativo.
Use o ToolStripManager.RenderMode propriedade para escolher um dos processadores fornecido.
Use ToolStripManager.Renderer para atribuir um renderizador personalizado.
Certifique-se de que ToolStrip.RenderMode é definido como o valor padrão de ManagerRenderMode.
Para desativar as cores de Microsoft Office para o aplicativo inteiro
- Defina ToolStripManager.VisualStylesEnabled como false.
Para desativar as cores de Microsoft Office para um controle de ToolStrip
Use código semelhante ao seguinte exemplo de código.
[Visual Basic]
Dim colorTable As ProfessionalColorTable() colorTable.UseSystemColors = True Dim toolStrip.Renderer As ToolStripProfessionalRenderer(colorTable)
[C#]
ProfessionalColorTable colorTable = new ProfessionalColorTable(); colorTable.UseSystemColors = true; toolStrip.Renderer = new ToolStripProfessionalRenderer(colorTable);
Consulte também
Tarefas
Como: Criar e definir um renderizador personalizado para o controle ToolStrip no Windows Forms
Referência
Visão geral do controle ToolStrip (Windows Forms)