簡體   English   中英

C#ToolStrip是透明的,但邊框仍然可見?

[英]C# ToolStrip is transparent but border is still visible?

我在C#應用程序中有一個ToolStrip,我將背景顏色設置為Transparent。 這揭示了底層形式的顏色,但遺憾的是ToolStrip邊框仍然可見。

我已經實現了一個自定義渲染器並覆蓋了DrawBoarder方法,不繪制任何東西,但這似乎也適用於所有包含的按鈕(即下拉按鈕上的菜單也沒有邊框繪制)。

所以我被卡住了。 繪制透明整個ToolStrip但保留按鈕的最佳方法是什么?

我試過重寫OnRenderToolStripBorder方法,它似乎根本不影響按鈕。 你試過這樣的嗎?

public class TestStripRenderer : ToolStripProfessionalRenderer
{   
    protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
    {
    }
}
protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
{
    if( e.ToolStrip.GetType().Name != "MyCustomToolStrip" )
    {
        base.OnRenderToolStripBorder(e);
    }
}

既然你試圖隱藏工具條但保留按鈕,我必須把它放在那里。

你甚至需要工具條嗎?

如果您只使用應用程序中的按鈕而沒有看似不需要的工具條,可能會更好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM