加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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

发布时间:2020-12-15 21:25:34 所属栏目:百科 来源:网络整理
导读:我有一个所有者绘制控件,我需要绘制树视图的展开框(“加/减”).打开视觉样式很容易,只需为相应的VisualStyleElement创建一个渲染器: VisualStyleElement element = VisualStyleElement.TreeView.Glyph.OpenedVisualStyleRenderer renderer = new VisualStyl
我有一个所有者绘制控件,我需要绘制树视图的展开框(“加/减”).打开视觉样式很容易,只需为相应的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(或黑色).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读