首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何获得XP主题的TreeView展开/折叠图标?

如何获得XP主题的TreeView展开/折叠图标?
EN

Stack Overflow用户
提问于 2012-06-26 19:43:31
回答 2查看 1.2K关注 0票数 0

我有一个基本的C# WPF TreeView,但我不喜欢展开/折叠图标是三角形,我想使用加/减图标。

this question中,我注意到您可以为应用程序设置uxtheme.dll主题,它使用uxtheme.dll更改为Vista/7主题,更改为XP主题的主题DLL是什么,以及如何在使用修改的TreeView控件的xaml文件中添加引用行?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-26 20:00:00

除了Windows的一部分(如窗口边框和标题栏)和自定义元素(如start菜单和任务栏)之外,UxTheme.dll还使用公共控制库向应用程序提供主题服务。UxTheme.dll是在2001年与Windows一起推出的,但是它提供的服务在不同的Windows版本之间有所不同。

WPF不使用UxTheme.dll作为其主题--所有WPF“视觉样式”实际上都是XP“露娜”( XP的Fischer-Price主题)、XP "Royale“(MCE2005)和Vista/7 Aero样式的图形重新实现。此外,WPF也不使用公共控件库,它拥有所有主要Windows控件的100%管理的重实现--这就是为什么WPF应用程序往往会落入Windows上的神秘谷--它们看起来像本地应用程序,但有些地方不对劲。

我本人并不是WPF专家,但我知道您可以覆盖特定元素的呈现,但是,我不知道您是否可以在不对它们进行子类的情况下这样做。

我很抱歉没有直接回答你的问题,我只是希望我能提供一些有用的见解。

票数 2
EN

Stack Overflow用户

发布于 2012-06-26 20:26:46

不幸的是,我认为这需要重写TreeView的默认样式和控制模板。下面是指向MSDN:http://msdn.microsoft.com/en-us/library/ms752048.aspx的链接。如果搜索Path x:Name=“折叠的”Path x:Name=展开“”,则箭头是这样绘制的。

您可以通过为每个状态使用Image交换Path元素来覆盖这一点。或者,您也可以使用Path元素来绘制类似于您想要的+效果的东西。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11214833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档