Aracılığıyla paylaş


ToolStripProfessionalRenderer Sınıf

Tanım

Nesneler için ToolStrip boyama işlevini işler, özel bir palet ve kolaylaştırılmış bir stil uygular.

public ref class ToolStripProfessionalRenderer : System::Windows::Forms::ToolStripRenderer
public class ToolStripProfessionalRenderer : System.Windows.Forms.ToolStripRenderer
type ToolStripProfessionalRenderer = class
    inherit ToolStripRenderer
Public Class ToolStripProfessionalRenderer
Inherits ToolStripRenderer
Devralma
ToolStripProfessionalRenderer

Örnekler

Aşağıdaki kod örneği, Microsoft® Outlook® tarafından sağlanan Gezinti Bölmesi'ni taklit eden bileşik bir denetimin nasıl oluşturulacağını gösterir. Tam kod listesi için bkz . Nasıl yapılır: Profesyonel Stilde ToolStrip Denetimi Oluşturma.

internal class StackRenderer : ToolStripProfessionalRenderer
{
    private static Bitmap titleBarGripBmp;
    private static string titleBarGripEnc = @"Qk16AQAAAAAAADYAAAAoAAAAIwAAAAMAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5ANj+RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5ANj+RzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMANj+";

    // Define titlebar colors.
    private static Color titlebarColor1 = Color.FromArgb(89, 135, 214);
    private static Color titlebarColor2 = Color.FromArgb(76, 123, 204);
    private static Color titlebarColor3 = Color.FromArgb(63, 111, 194);
    private static Color titlebarColor4 = Color.FromArgb(50, 99, 184);
    private static Color titlebarColor5 = Color.FromArgb(38, 88, 174);
    private static Color titlebarColor6 = Color.FromArgb(25, 76, 164);
    private static Color titlebarColor7 = Color.FromArgb(12, 64, 154);
    private static Color borderColor = Color.FromArgb(0, 0, 128);

    static StackRenderer()
    {
        titleBarGripBmp = StackView.DeserializeFromBase64(titleBarGripEnc);
    }

    public StackRenderer()
    {
    }

    private void DrawTitleBar(Graphics g, Rectangle rect)
    {
        // Assign the image for the grip.
        Image titlebarGrip = titleBarGripBmp;

        // Fill the titlebar. 
        // This produces the gradient and the rounded-corner effect.
        g.DrawLine(new Pen(titlebarColor1), rect.X, rect.Y, rect.X + rect.Width, rect.Y);
        g.DrawLine(new Pen(titlebarColor2), rect.X, rect.Y + 1, rect.X + rect.Width, rect.Y + 1);
        g.DrawLine(new Pen(titlebarColor3), rect.X, rect.Y + 2, rect.X + rect.Width, rect.Y + 2);
        g.DrawLine(new Pen(titlebarColor4), rect.X, rect.Y + 3, rect.X + rect.Width, rect.Y + 3);
        g.DrawLine(new Pen(titlebarColor5), rect.X, rect.Y + 4, rect.X + rect.Width, rect.Y + 4);
        g.DrawLine(new Pen(titlebarColor6), rect.X, rect.Y + 5, rect.X + rect.Width, rect.Y + 5);
        g.DrawLine(new Pen(titlebarColor7), rect.X, rect.Y + 6, rect.X + rect.Width, rect.Y + 6);

        // Center the titlebar grip.
        g.DrawImage(
            titlebarGrip,
            new Point(rect.X + ((rect.Width / 2) - (titlebarGrip.Width / 2)),
            rect.Y + 1));
    }

    // This method handles the RenderGrip event.
    protected override void OnRenderGrip(ToolStripGripRenderEventArgs e)
    {
        DrawTitleBar(
            e.Graphics,
            new Rectangle(0, 0, e.ToolStrip.Width, 7));
    }

    // This method handles the RenderToolStripBorder event.
    protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
    {
        DrawTitleBar(
            e.Graphics,
            new Rectangle(0, 0, e.ToolStrip.Width, 7));
    }

    // This method handles the RenderButtonBackground event.
    protected override void OnRenderButtonBackground(ToolStripItemRenderEventArgs e)
    {
        Graphics g = e.Graphics;
        Rectangle bounds = new Rectangle(Point.Empty, e.Item.Size);

        Color gradientBegin = Color.FromArgb(203, 225, 252);
        Color gradientEnd = Color.FromArgb(125, 165, 224);

        ToolStripButton button = e.Item as ToolStripButton;
        if (button.Pressed || button.Checked)
        {
            gradientBegin = Color.FromArgb(254, 128, 62);
            gradientEnd = Color.FromArgb(255, 223, 154);
        }
        else if (button.Selected)
        {
            gradientBegin = Color.FromArgb(255, 255, 222);
            gradientEnd = Color.FromArgb(255, 203, 136);
        }

        using (Brush b = new LinearGradientBrush(
            bounds,
            gradientBegin,
            gradientEnd,
            LinearGradientMode.Vertical))
        {
            g.FillRectangle(b, bounds);
        }

        e.Graphics.DrawRectangle(
            SystemPens.ControlDarkDark,
            bounds);

        g.DrawLine(
            SystemPens.ControlDarkDark,
            bounds.X,
            bounds.Y,
            bounds.Width - 1,
            bounds.Y);

        g.DrawLine(
            SystemPens.ControlDarkDark,
            bounds.X,
            bounds.Y,
            bounds.X,
            bounds.Height - 1);

        ToolStrip toolStrip = button.Owner;
        ToolStripButton nextItem = button.Owner.GetItemAt(
            button.Bounds.X,
            button.Bounds.Bottom + 1) as ToolStripButton;

        if (nextItem == null)
        {
            g.DrawLine(
                SystemPens.ControlDarkDark,
                bounds.X,
                bounds.Height - 1,
                bounds.X + bounds.Width - 1,
                bounds.Height - 1);
        }
    }
}
Friend Class StackRenderer
   Inherits ToolStripProfessionalRenderer
   Private Shared titleBarGripBmp As Bitmap
   Private Shared titleBarGripEnc As String = "Qk16AQAAAAAAADYAAAAoAAAAIwAAAAMAAAABABgAAAAAAAAAAADEDgAAxA4AAAAAAAAAAAAAuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5uGMyuGMy+/n5+/n5ANj+RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5wm8/RzIomHRh+/n5ANj+RzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMzHtMRzIoRzIozHtMANj+"
   
   ' Define titlebar colors.
   Private Shared titlebarColor1 As Color = Color.FromArgb(89, 135, 214)
   Private Shared titlebarColor2 As Color = Color.FromArgb(76, 123, 204)
   Private Shared titlebarColor3 As Color = Color.FromArgb(63, 111, 194)
   Private Shared titlebarColor4 As Color = Color.FromArgb(50, 99, 184)
   Private Shared titlebarColor5 As Color = Color.FromArgb(38, 88, 174)
   Private Shared titlebarColor6 As Color = Color.FromArgb(25, 76, 164)
   Private Shared titlebarColor7 As Color = Color.FromArgb(12, 64, 154)
   Private Shared borderColor As Color = Color.FromArgb(0, 0, 128)
   
   Shared Sub New()
      titleBarGripBmp = StackView.DeserializeFromBase64(titleBarGripEnc)
     End Sub
   
   Public Sub New()
     End Sub
   
     Private Sub DrawTitleBar(ByVal g As Graphics, ByVal rect As Rectangle)

         ' Assign the image for the grip.
         Dim titlebarGrip As Image = titleBarGripBmp

         ' Fill the titlebar. 
         ' This produces the gradient and the rounded-corner effect.
         g.DrawLine(New Pen(titlebarColor1), rect.X, rect.Y, rect.X + rect.Width, rect.Y)
         g.DrawLine(New Pen(titlebarColor2), rect.X, rect.Y + 1, rect.X + rect.Width, rect.Y + 1)
         g.DrawLine(New Pen(titlebarColor3), rect.X, rect.Y + 2, rect.X + rect.Width, rect.Y + 2)
         g.DrawLine(New Pen(titlebarColor4), rect.X, rect.Y + 3, rect.X + rect.Width, rect.Y + 3)
         g.DrawLine(New Pen(titlebarColor5), rect.X, rect.Y + 4, rect.X + rect.Width, rect.Y + 4)
         g.DrawLine(New Pen(titlebarColor6), rect.X, rect.Y + 5, rect.X + rect.Width, rect.Y + 5)
         g.DrawLine(New Pen(titlebarColor7), rect.X, rect.Y + 6, rect.X + rect.Width, rect.Y + 6)

         ' Center the titlebar grip.
         g.DrawImage(titlebarGrip, New Point(rect.X + (rect.Width / 2 - titlebarGrip.Width / 2), rect.Y + 1))
     End Sub
   
   
   ' This method handles the RenderGrip event.
   Protected Overrides Sub OnRenderGrip(e As ToolStripGripRenderEventArgs)
      DrawTitleBar(e.Graphics, New Rectangle(0, 0, e.ToolStrip.Width, 7))
     End Sub
   
   
   ' This method handles the RenderToolStripBorder event.
   Protected Overrides Sub OnRenderToolStripBorder(e As ToolStripRenderEventArgs)
      DrawTitleBar(e.Graphics, New Rectangle(0, 0, e.ToolStrip.Width, 7))
     End Sub
   
   
   ' This method handles the RenderButtonBackground event.
   Protected Overrides Sub OnRenderButtonBackground(e As ToolStripItemRenderEventArgs)
      Dim g As Graphics = e.Graphics
      Dim bounds As New Rectangle(Point.Empty, e.Item.Size)
      
      Dim gradientBegin As Color = Color.FromArgb(203, 225, 252)
      Dim gradientEnd As Color = Color.FromArgb(125, 165, 224)
      
         Dim button As ToolStripButton = CType(e.Item, ToolStripButton)
      
      If button.Pressed OrElse button.Checked Then
         gradientBegin = Color.FromArgb(254, 128, 62)
         gradientEnd = Color.FromArgb(255, 223, 154)
      ElseIf button.Selected Then
         gradientBegin = Color.FromArgb(255, 255, 222)
         gradientEnd = Color.FromArgb(255, 203, 136)
      End If
      
      Dim b = New LinearGradientBrush(bounds, gradientBegin, gradientEnd, LinearGradientMode.Vertical)
      Try
         g.FillRectangle(b, bounds)
      Finally
         b.Dispose()
      End Try
      
      e.Graphics.DrawRectangle(SystemPens.ControlDarkDark, bounds)
      
      g.DrawLine(SystemPens.ControlDarkDark, bounds.X, bounds.Y, bounds.Width - 1, bounds.Y)
      
      g.DrawLine(SystemPens.ControlDarkDark, bounds.X, bounds.Y, bounds.X, bounds.Height - 1)
      
      Dim toolStrip As ToolStrip = button.Owner
         Dim nextItem As ToolStripButton = CType(button.Owner.GetItemAt(button.Bounds.X, button.Bounds.Bottom + 1), ToolStripButton)
      
      If nextItem Is Nothing Then
         g.DrawLine(SystemPens.ControlDarkDark, bounds.X, bounds.Height - 1, bounds.X + bounds.Width - 1, bounds.Height - 1)
      End If
     End Sub
 End Class

Açıklamalar

ToolStripProfessionalRenderer adlı ProfessionalColorTabledeğiştirilebilir bir renk tablosunu temel alan kalemler ve fırçalar oluşturur.

Oluşturucular

ToolStripProfessionalRenderer()

ToolStripProfessionalRenderer sınıfının yeni bir örneğini başlatır.

ToolStripProfessionalRenderer(ProfessionalColorTable)

ToolStripProfessionalRenderer sınıfının yeni bir örneğini başlatır.

Özellikler

ColorTable

Boyama için kullanılan renk paletini alır.

RoundedEdges

Denetimlerin kenarlarının kare veya keskin bir görünüm yerine yuvarlanmış bir görünüme sahip olup olmadığını belirten bir değer alır veya ayarlar.

Yöntemler

DrawArrow(ToolStripArrowRenderEventArgs)

üzerine bir ok ToolStripItemçizer.

(Devralındığı yer: ToolStripRenderer)
DrawButtonBackground(ToolStripItemRenderEventArgs)

bir ToolStripButtoniçin arka plan çizer.

(Devralındığı yer: ToolStripRenderer)
DrawDropDownButtonBackground(ToolStripItemRenderEventArgs)

bir ToolStripDropDownButtoniçin arka plan çizer.

(Devralındığı yer: ToolStripRenderer)
DrawGrip(ToolStripGripRenderEventArgs)

üzerinde bir taşıma tutamacı ToolStripçizer.

(Devralındığı yer: ToolStripRenderer)
DrawImageMargin(ToolStripRenderEventArgs)

üzerindeki ToolStripbir görüntünün etrafındaki boşluğu çizer.

(Devralındığı yer: ToolStripRenderer)
DrawItemBackground(ToolStripItemRenderEventArgs)

bir ToolStripItemiçin arka plan çizer.

(Devralındığı yer: ToolStripRenderer)
DrawItemCheck(ToolStripItemImageRenderEventArgs)

Öğenin seçili durumda olduğunu belirten bir resim ToolStripItem çizer.

(Devralındığı yer: ToolStripRenderer)
DrawItemImage(ToolStripItemImageRenderEventArgs)

üzerinde ToolStripItembir resim çizer.

(Devralındığı yer: ToolStripRenderer)
DrawItemText(ToolStripItemTextRenderEventArgs)

üzerine metin ToolStripItemçizer.

(Devralındığı yer: ToolStripRenderer)
DrawLabelBackground(ToolStripItemRenderEventArgs)

bir ToolStripLabeliçin arka plan çizer.

(Devralındığı yer: ToolStripRenderer)
DrawMenuItemBackground(ToolStripItemRenderEventArgs)

bir ToolStripMenuItemiçin arka plan çizer.

(Devralındığı yer: ToolStripRenderer)
DrawOverflowButtonBackground(ToolStripItemRenderEventArgs)

Taşma düğmesinin arka planını çizer.

(Devralındığı yer: ToolStripRenderer)
DrawSeparator(ToolStripSeparatorRenderEventArgs)

Bir çizer ToolStripSeparator.

(Devralındığı yer: ToolStripRenderer)
DrawSplitButton(ToolStripItemRenderEventArgs)

Bir çizer ToolStripSplitButton.

(Devralındığı yer: ToolStripRenderer)
DrawStatusStripSizingGrip(ToolStripRenderEventArgs)

Boyutlandırma kavraması çizer.

(Devralındığı yer: ToolStripRenderer)
DrawToolStripBackground(ToolStripRenderEventArgs)

bir ToolStripiçin arka plan çizer.

(Devralındığı yer: ToolStripRenderer)
DrawToolStripBorder(ToolStripRenderEventArgs)

bir ToolStripiçin kenarlık çizer.

(Devralındığı yer: ToolStripRenderer)
DrawToolStripContentPanelBackground(ToolStripContentPanelRenderEventArgs)

öğesinin arka planını ToolStripContentPanelçizer.

(Devralındığı yer: ToolStripRenderer)
DrawToolStripPanelBackground(ToolStripPanelRenderEventArgs)

öğesinin arka planını ToolStripPanelçizer.

(Devralındığı yer: ToolStripRenderer)
DrawToolStripStatusLabelBackground(ToolStripItemRenderEventArgs)

öğesinin arka planını ToolStripStatusLabelçizer.

(Devralındığı yer: ToolStripRenderer)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
Initialize(ToolStrip)

Türetilmiş bir sınıfta geçersiz kılındığında, verilen ToolStripöğesinin özel başlatılmasını sağlar.

(Devralındığı yer: ToolStripRenderer)
InitializeContentPanel(ToolStripContentPanel)

Belirtilen ToolStripContentPanelöğesini başlatır.

(Devralındığı yer: ToolStripRenderer)
InitializeItem(ToolStripItem)

Türetilmiş bir sınıfta geçersiz kılındığında, verilen ToolStripItemöğesinin özel başlatılmasını sağlar.

(Devralındığı yer: ToolStripRenderer)
InitializePanel(ToolStripPanel)

Belirtilen ToolStripPanelöğesini başlatır.

(Devralındığı yer: ToolStripRenderer)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
OnRenderArrow(ToolStripArrowRenderEventArgs)

Olayı tetikler RenderArrow .

OnRenderButtonBackground(ToolStripItemRenderEventArgs)

Olayı tetikler RenderButtonBackground .

OnRenderDropDownButtonBackground(ToolStripItemRenderEventArgs)

Olayı tetikler RenderDropDownButtonBackground .

OnRenderGrip(ToolStripGripRenderEventArgs)

Olayı tetikler RenderGrip .

OnRenderImageMargin(ToolStripRenderEventArgs)

Öğenin arka planını çizer.

OnRenderItemBackground(ToolStripItemRenderEventArgs)

Olayı tetikler OnRenderItemBackground(ToolStripItemRenderEventArgs) .

(Devralındığı yer: ToolStripRenderer)
OnRenderItemCheck(ToolStripItemImageRenderEventArgs)

Olayı tetikler RenderItemCheck .

OnRenderItemImage(ToolStripItemImageRenderEventArgs)

Olayı tetikler RenderItemImage .

OnRenderItemText(ToolStripItemTextRenderEventArgs)

Olayı tetikler RenderItemText .

OnRenderLabelBackground(ToolStripItemRenderEventArgs)

Olayı tetikler RenderLabelBackground .

OnRenderMenuItemBackground(ToolStripItemRenderEventArgs)

Olayı tetikler RenderMenuItemBackground .

OnRenderOverflowButtonBackground(ToolStripItemRenderEventArgs)

Olayı tetikler RenderOverflowButtonBackground .

OnRenderSeparator(ToolStripSeparatorRenderEventArgs)

Olayı tetikler RenderSeparator .

OnRenderSplitButtonBackground(ToolStripItemRenderEventArgs)

OnRenderSplitButtonBackground olayını tetikler.

OnRenderStatusStripSizingGrip(ToolStripRenderEventArgs)

Olayı tetikler RenderStatusStripSizingGrip .

(Devralındığı yer: ToolStripRenderer)
OnRenderToolStripBackground(ToolStripRenderEventArgs)

Olayı tetikler RenderToolStripBackground .

OnRenderToolStripBorder(ToolStripRenderEventArgs)

Olayı tetikler RenderToolStripBorder .

OnRenderToolStripContentPanelBackground(ToolStripContentPanelRenderEventArgs)

Olayı tetikler RenderToolStripContentPanelBackground .

OnRenderToolStripPanelBackground(ToolStripPanelRenderEventArgs)

Olayı tetikler RenderToolStripPanelBackground .

OnRenderToolStripStatusLabelBackground(ToolStripItemRenderEventArgs)

Olayı tetikler RenderToolStripStatusLabelBackground .

ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Ekinlikler

RenderArrow

üzerindeki ToolStripItem bir ok işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderButtonBackground

Bir ToolStripButton için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderDropDownButtonBackground

Bir ToolStripDropDownButton için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderGrip

Bir ToolStrip için taşıma tutamacı işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderImageMargin

Görüntü ile kapsayıcısı arasındaki kenar boşluğunu çizer.

(Devralındığı yer: ToolStripRenderer)
RenderItemBackground

Bir ToolStripItem için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderItemCheck

Seçili ToolStripItem bir resim için görüntü işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderItemImage

bir ToolStripItem için görüntü işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderItemText

bir ToolStripItem için metin işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderLabelBackground

Bir ToolStripLabel için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderMenuItemBackground

Bir ToolStripMenuItem için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderOverflowButtonBackground

Taşma düğmesinin arka planı işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderSeparator

bir ToolStripSeparator işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderSplitButtonBackground

Bir ToolStripSplitButton için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderStatusStripSizingGrip

Görüntüleme stili değiştiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderToolStripBackground

Bir ToolStrip için arka plan işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderToolStripBorder

Bir için ToolStrip kenarlık işlendiğinde gerçekleşir.

(Devralındığı yer: ToolStripRenderer)
RenderToolStripContentPanelBackground

bir ToolStripContentPanelöğesinin arka planını çizer.

(Devralındığı yer: ToolStripRenderer)
RenderToolStripPanelBackground

bir ToolStripPanelöğesinin arka planını çizer.

(Devralındığı yer: ToolStripRenderer)
RenderToolStripStatusLabelBackground

bir ToolStripStatusLabelöğesinin arka planını çizer.

(Devralındığı yer: ToolStripRenderer)

Şunlara uygulanır