2009-10-21 2 views
1

имеет Googled и не может определить, как сделать ToolStripSeparator «нарисовать» горизонтальную линию на панели инструментов, которая выровнена по вертикали.Создание ToolStripSeparator горизонтально в вертикальной панели инструментов в WinForms

Разделитель нарисован вертикально, что делает его ужасным.

Например.
* - вещь

*
*
| < - сепаратор
*
*

, когда он должен быть

*
*
- < - сепаратор
*
*

+0

Я даю это одобрение печати «Works-On-My-Machine». :) Я смотрю на ToolStripSeparator в вертикальной инструментальной панели прямо сейчас. Сепаратор окрашен горизонтально - как в дизайне, так и во время работы. – Yoopergeek

+0

Я думаю, скриншот был бы в порядке. –

+0

Да, мне было интересно, но я дал ответ о том, как обычай нарисовать его в любом случае. ;) –

ответ

1

Вы можете создать свой собственный ToolStripRenderer и переопределите OnRenderSeparator, чтобы провести линию самостоятельно.

protected override void OnRenderSeparator(ToolStripSeparatorRenderEventArgs e) 
{ 
    using (var pen = new Pen(borderColor)) 
    { 
     e.Graphics.DrawLine(pen, 5, e.Item.Size.Height/2, e.Item.Size.Width - 5, e.Item.Size.Height/2); 
    } 
} 

Затем установите Renderer свойство вашего ToolStrip к визуализатору вы только что сделали.

toolStrip.Renderer = new MyToolStripRenderer();