Compartir a través de


Cómo: Dibujar un control ToolStrip de manera personalizada

Los controles ToolStrip tienen las siguientes clases de representación (dibujo) asociadas:

Para dibujar de forma personalizada (también conocido como dibujado por el propietario) un ToolStrip, puede reemplazar una de las clases del representador y cambiar algún aspecto de la lógica de representación.

Para obtener más información, vea Ejemplo Custom Drawing User Control y Ejemplo Custom Drawing User Control.

Los procedimientos siguientes describen distintos aspectos de dibujo personalizado.

Para intercambiar entre los representadores proporcionados

Para cambiar los bordes de estilo de Microsoft Office a recto

Nota

Hay una versión de este método para ToolStripRenderer, ToolStripSystemRenderer y ToolStripProfessionalRenderer.

Para cambiar la clase ProfessionalColorTable

  • Reemplace ProfessionalColorTable y cambie los colores que desee.

    [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 cambiar la representación para todos los controles ToolStrip de su aplicación

  1. Utilice la propiedad ToolStripManager.RenderMode para elegir uno de los representadores dados.

  2. Utilice ToolStripManager.Renderer para asignar un representador personalizado.

  3. Asegúrese de que ToolStrip.RenderMode está establecido en el valor predeterminado de ManagerRenderMode.

Para desactivar los colores de Microsoft Office para la aplicación completa

Para desactivar los colores de Microsoft Office para un control ToolStrip

  • Utilice el código similar al ejemplo de código siguiente.

    [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);
    

Vea también

Tareas

Cómo: Crear y establecer un representador personalizado para el control ToolStrip de formularios Windows Forms

Referencia

Información sobre el control ToolStrip (formularios Windows Forms)

ToolStripSystemRenderer

ToolStripProfessionalRenderer

ToolStripRenderer

Conceptos

Controles compatibles con dibujos propietarios integrados