微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – 如何在关闭视觉样式的情况下绘制UI元素?

我有一个所有者绘制控件,我需要绘制树视图的展开框(“加/减”).打开视觉样式很容易,只需为相应的VisualStyleElement创建一个渲染器:

VisualStyleElement element = VisualStyleElement.TreeView.Glyph.Opened
VisualStyleRenderer renderer = new VisualStyleRenderer( element );
Size size = renderer.GetPartSize( graphics,ThemeSizeType.True );
...
renderer.DrawBackground( graphics,someRect );

当视觉风格关闭时,是否可以实现类似的效果?我知道有一个ControlPaint类可以绘制整个控件,但是如何绘制(并获得大小)只是TreeView控件的一部分?

解决方法

没有VisualStyles,我认为加减控件只是DrawRectangle和DrawLine方法调用.

Rectangle部分看起来像使用SystemColors.Control颜色,而Plus / Minus部分看起来像SystemColors.ControlText(或黑色).

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐