【问题标题】:How to hide the vertical gridlines of the group header in betterlistview control?如何在betterlistview控件中隐藏组标题的垂直网格线?
【发布时间】:2014-09-30 02:28:43
【问题描述】:
我在我的 .net 应用程序中使用了 betterlistview 控件。与组一起使用时,我需要有关网格线的帮助。我正在使用详细信息视图,并且网格线属性设置为“网格”。我还将组添加到列表中。问题是垂直网格线也显示在组标题区域旁边,这使得组看起来不太优雅,也不太清晰。此外,该组的第一行项目不显示上部水平网格线。任何帮助将不胜感激。这是我正在处理的列表视图的快照:
【问题讨论】:
标签:
c#
.net
listview
better-listview
【解决方案1】:
经过一番挣扎,我终于给组件猫头鹰(开发了betterlistview控件的公司)的支持团队发了邮件,得到了快速的回复。我希望它可能对某人有所帮助,所以我在此引用 Libor Tinka 先生(ComponentOwl.com 首席开发人员)的回答:
“此框不支持,但可以使用自定义绘图擦除不需要的网格线。只需继承 BetterListView 并添加 OnDrawGroup 方法覆盖:
protected override void OnDrawGroup(BetterListViewDrawGroupEventArgs eventArgs)
{
eventArgs.Graphics.FillRectangle(SystemBrushes.Window, eventArgs.GroupBounds.BoundsInner);
base.OnDrawGroup(eventArgs);
}
请注意,base.OnDrawGroup 是在自定义绘图之后调用的。这确保我们不会替换组标题的文本、图像和其他功能。
结果如下所示:"