다음을 통해 공유


방법: Windows Forms에서 ToolStrip 컨트롤에 대한 사용자 지정 렌더러 만들기 및 설정

ToolStrip 컨트롤은 테마와 스타일을 쉽게 지원합니다. ToolStrip.Renderer 속성 또는 ToolStripManager.Renderer 속성을 사용자 지정 렌더러로 설정하여 완전히 사용자 지정 모양과 동작(모양 및 느낌)을 달성할 수 있습니다.

각 개별 ToolStrip, MenuStrip, ContextMenuStrip 또는 StatusStrip 컨트롤에 렌더러를 할당하거나 ToolStrip.RenderMode 속성을 ToolStripRenderMode.ManagerRenderMode(으)로 설정하여 Renderer 속성을 사용하여 모든 개체에 영향을 줄 수 있습니다.

비고

RenderModeToolStrip.Renderer의 값이 null이(가) 아닌 경우에만 Custom을(를) 반환합니다.

사용자 지정 렌더러를 만들려면

  1. 클래스를 확장합니다 ToolStripRenderer .

  2. 적절한 On... 멤버를 재정의하여 원하는 사용자 지정 렌더링 구현

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

사용자 지정 렌더러를 현재 렌더러로 설정하려면

  1. 하나의 ToolStrip에 대해 사용자 지정 렌더러를 설정하려면 ToolStrip.Renderer 속성을 사용자 지정 렌더러로 설정합니다.

    toolStrip1.Renderer = New RedTextRenderer()
    
    toolStrip1.Renderer = new RedTextRenderer();
    
  2. 또는 애플리케이션에 포함된 모든 ToolStrip 클래스에 대한 사용자 지정 렌더러를 설정하려면 다음을 수행합니다. ToolStripManager.Renderer 속성을 사용자 지정 렌더러로 설정하고 RenderMode 속성을 ManagerRenderMode(으)로 설정합니다.

    toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode
    ToolStripManager.Renderer = New RedTextRenderer()
    
    toolStrip1.RenderMode = ToolStripRenderMode.ManagerRenderMode;
    ToolStripManager.Renderer = new RedTextRenderer();
    

참고하십시오