1
的豎直工具欄中使ToolStripSeparator水平放置在谷歌地圖上,並且找不到如何使ToolStripSeparator在垂直對齊的工具欄中「繪製」水平線。在WinForms
分隔符是垂直繪製,這使得它很糟糕。
例如,
* - 項目
*
*
| < - 分離
*
*
當它應該是
*
*
- < - 分離
*
*
的豎直工具欄中使ToolStripSeparator水平放置在谷歌地圖上,並且找不到如何使ToolStripSeparator在垂直對齊的工具欄中「繪製」水平線。在WinForms
分隔符是垂直繪製,這使得它很糟糕。
例如,
* - 項目
*
*
| < - 分離
*
*
當它應該是
*
*
- < - 分離
*
*
您可以創建自己的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.Renderer = new MyToolStripRenderer();
我給這個「Works-On-My-Machine」認可的印章。 :)我現在正在垂直工具條中查看ToolStripSeparator。分隔符是水平塗刷 - 無論是在設計中還是在運行時。 – Yoopergeek 2009-10-21 14:21:33
我猜想屏幕截圖是按順序的。 – 2009-10-21 14:25:31
是的,我想知道,但我提供了一個如何自定義繪製它的答案。 ;) – 2009-10-21 14:25:32