我在C#应用程序中有一个ToolStrip,我将背景颜色设置为Transparent。这揭示了底层形式的颜色,但遗憾的是ToolStrip边框仍然可见。
我已经实现了一个自定义渲染器,并覆盖了DrawBoarder方法,不绘制任何东西,但这似乎也适用于所有包含的按钮(即下拉按钮上的菜单也没有边框绘制)。
所以我被困住了。绘制透明整个ToolStrip但保留按钮的最佳方法是什么?
答案 0 :(得分:4)
我尝试过覆盖OnRenderToolStripBorder方法,它似乎根本不会影响按钮。你试过这样的吗?
public class TestStripRenderer : ToolStripProfessionalRenderer
{
protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
{
}
}
答案 1 :(得分:2)
protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
{
if( e.ToolStrip.GetType().Name != "MyCustomToolStrip" )
{
base.OnRenderToolStripBorder(e);
}
}
答案 2 :(得分:0)
由于你试图隐藏工具条但保留按钮,我必须把它放在那里。
你甚至需要工具条吗?
如果您只使用应用程序中的按钮而没有看似不需要的工具条,可能会更好。