删除BindingNavigator上的下划线

时间:2012-01-25 19:36:08

标签: c# winforms controls

当我向表单添加BindingNavigator时,它下面会出现一行。我怎么能摆脱那条线?

enter image description here

我查看了属性中的所有设置,但我不知道如何摆脱这一行。我也看过网上找不到任何东西,但我不能成为唯一想要删除它的人。有什么建议吗?

2 个答案:

答案 0 :(得分:2)

您可能无法在不实现子类并覆盖OnPaint的情况下,或者在替换或修改内置渲染时执行其他操作。这种方法的问题在于BindingNavigator可能是一个复合控件,这意味着有一堆按钮控件和一个文本框控件等都可以自己处理渲染的一部分。完全依靠自己渲染控件很难。

答案 1 :(得分:0)

您可以尝试创建自己的渲染器,省略渲染边框:

public class BorderlessRenderer : ToolStripRenderer {
  protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) {
    //base.OnRenderToolStripBorder(e);
  }
}

然后从代码中,您可以将其应用于导航器:

public Form1() {
  InitializeComponent();
  bindingNavigator1.Renderer = new BorderlessRenderer();  
}

不幸的是,我认为这种方法也可能会隐藏分隔线。