当我将一个BindingNavigator添加到我的表单中时,它的下方会出现一条线。我怎么才能去掉那行呢?

我已经查看了属性中的所有设置,但我不知道如何去掉这一行。我也在网上找过了,什么也找不到,但我不是唯一想要删除它的人。有什么建议吗?
发布于 2012-01-26 03:40:34
如果不实现一个子类并覆盖OnPaint,或者在替换或修改内置渲染时做一些其他的修改,你可能无法做到这一点。这种方法的问题是BindingNavigator可能是一个复合控件,这意味着有一堆按钮控件和文本框控件等,它们都处理呈现本身的一部分。完全靠你自己呈现控件是很困难的。
发布于 2012-01-26 05:58:52
您可以尝试创建自己的渲染器,在其中忽略渲染的边界:
public class BorderlessRenderer : ToolStripRenderer {
protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e) {
//base.OnRenderToolStripBorder(e);
}
}然后,从代码中,您可以将其应用于您的导航器:
public Form1() {
InitializeComponent();
bindingNavigator1.Renderer = new BorderlessRenderer();
}不幸的是,我认为这个方法可能也隐藏了分隔线。
https://stackoverflow.com/questions/9009096
复制相似问题