如何摆脱这条难看的线?
在空表单上绘制默认的bindingnavigator,您将看到问题所在。 RenderMode是ManagerRenderMode。我想要这种渲染模式,所以鼠标在颜色上是正确的。但是,如果我切换到系统作为渲染模式,丑陋的线会消失,但是鼠标在颜色/效果上会变得难看。
我一直在寻找一段时间的解决方案,但没有。也许这里的某个人以前见过这个问题?
答案 0 :(得分:2)
这不是BindingNavigator
特定问题,而是ToolStrip
继承的BindingNavigator
。
当DrawToolStripBorder
类ToolStripProfessionalRenderer
属性为true
(默认值)时,由RoundedEdges
方法引起。
为了关闭它,我可以建议以下辅助方法:
public static class WindowsFormsExtensions
{
public static void DisableRoundedEdges(this ToolStripRenderer renderer)
{
var professionalRenderer = renderer as ToolStripProfessionalRenderer;
if (professionalRenderer != null)
professionalRenderer.RoundedEdges = false;
}
}
现在您可以为特定控件关闭它(它在设计时不可用,因此它必须在表单/控件构造函数或加载事件中运行时):
this.bindingNavigator1.Renderer.DisableRoundedEdges();
要全局停用它,请在调用Main
之前在Application.Run
方法中添加以下内容:
ToolStripManager.Renderer.DisableRoundedEdges();