涛声依旧 发表于 2014-10-12 02:20:00

【WinForms】c1topicbar,c1topicpage主题跟随问题

近期在尝试把玩C1的控件,的确有许多过人之处,特别是各控件的VisualStyle属性,令人印象深刻。
在尝试中发现,我们只要在继承自C1RibbonForm的窗口中添加C1控件,或者在C1的容器控件中添加C1控件,控件的VisualStyle会自动跟随窗口的VisualStyle,当添加多个控件后,我们更改窗口的VisualStyle,这些控件的VisualStyle会立即跟随,发生变化,非常方便实用。
但有一个例外(or意外),就是TopicBar,不管是将其直接放置在窗口,还是放置在容器控件之中,其仅在设计放置时,跟随了父级的VisualStyle,当窗口的主题变化后,也仅是TopicBar的主题发生跟随,但TopicPage的主题恒定不变。
不知这个是否是一个BUG,按正常思维,TopicPage的主题也应发生变化才对。

涛声依旧 发表于 2014-10-12 02:39:00

奇怪,新开一个窗口,从新来过,又行了。也许我在原项目发生版本冲突了。

Alice 发表于 2014-10-13 14:29:00

回复 2楼涛声依旧的帖子

好的。此贴结贴。有问题欢迎开新帖。

涛声依旧 发表于 2014-10-13 22:46:00

经过反复测试,还是存在问题。即当窗口的主题变化后,也仅是TopicBar的主题发生跟随,但TopicPage的主题恒定不变。

Alice 发表于 2014-10-14 09:59:00

回复 4楼涛声依旧的帖子

请将你的示例发过来,并补充必然重现的步骤,我帮你看看。

涛声依旧 发表于 2014-10-14 20:38:00

其实在设计时就能重现问题:
1、新建一个继承自ribbonform的窗体;
2、在窗体中放置一个NavBar;
3、在窗体中放置一个TopicBar;

好了,此时,更改窗体的VisualStyle,会发现NavBar的视觉效果发生跟随变化,但TopicBar无动于衷。

Alice 发表于 2014-10-15 09:54:00

回复 6楼涛声依旧的帖子

的确是存在这样的问题,我会将这个问题提交到产品组。
这个问题可以通过更改C1TopicBar的VisualStyle的属性来解决。另外C1RibbonForm和C1TopicBar的VisualStyle属性里的值不是一一对应的。即使修复此问题,依然会出现不对应的情况。比如C1RibbonForm的VisualStyle里有Window7,但C1TopicBar和C1NavBar没有。

涛声依旧 发表于 2014-10-15 13:37:00

好的。本想利用c1众多控件来商城界面,并保持界面的多种视觉风格。topicbar是重点想用的。希望他也能跟随主窗体的风格。而不是手工用代码来同步。
观测IDE自动生成的代码,发现其他控件只产生VisualStyleBase属性,
而topicbar产生了VisualStyleBase,VisualStyle两个属性。不是是否此处大意了。

Alice 发表于 2014-10-15 17:09:00

回复 8楼涛声依旧的帖子

问题已经反馈到产品组,如果是bug会被修复。
如果有解决方案或是不支持,我也会给你回复。
页: [1]
查看完整版本: 【WinForms】c1topicbar,c1topicpage主题跟随问题