找回密码
 立即注册

QQ登录

只需一步,快速开始

tysoft

中级会员

84

主题

214

帖子

678

积分

中级会员

积分
678

活字格认证微信认证勋章元老葡萄

tysoft
中级会员   /  发表于:2015-1-6 11:16  /   查看:10187  /  回复:13
1、C1和spread的主题同步,现在好像不行,是否有解决方案
2、C1和spread自定主题同步,C1有主题编辑器,spread的主题如何自定义
3、当设置主题后,spread设计器公式的三个按钮显示问题

QQ截图20150106111330.png

13 个回复

倒序浏览
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2015-1-6 12:12:00
沙发
tysoft 你好,

你所使用的Spread设计器是SpreadDesigner程序吧,C1 和 Spread本身都提供了内置的皮肤和自定义皮肤的能力,你所提到的需求我建议通过以下方法来实现。
首先,实现 MainForm 窗体的 VisualStyleChanged 事件,你就可以根据C1的皮肤设置来切换Spread的皮肤,示例代码如下:

  1.     private void SpreadDesigner_VisualStyleChanged(object sender, EventArgs e)
  2.     {
  3.         if (this.VisualStyle == C1.Win.C1Ribbon.VisualStyle.Office2007Blue)
  4.         {
  5.             this.fpSpread1.Skin = FarPoint.Win.Spread.DefaultSpreadSkins.Office2007;   
  6.         }      
  7.     }
复制代码


当然,你提到的三个按钮的问题,也需要在这个事件中进行处理。
回复 使用道具 举报
tysoft
中级会员   /  发表于:2015-1-6 12:35:00
板凳

??

回复 2楼dof的帖子

那三个按钮其实只是普通的button,只是设置了背景图片,当应用了c1的主题后,按钮的图标就出问题了

111.png
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2015-1-6 13:40:00
地板
我使用从 Spread 在线演示页面中下载的 Spread 开源表格设计器 源码,然后设置MainForms 窗体的 VisualStyle 为 Office2010Black 之后并没有出现问题,截图如下:
SpreadDesigner.png

不知道你设置的C1皮肤是哪一种,如果你也使用Spread 在线演示页面中的源码加上你的设置是否能够重现你的问题,你可以将可以重现你问题的工程发给我调试一下。
回复 使用道具 举报
tysoft
中级会员   /  发表于:2015-1-6 14:21:00
5#
我使用C1.Win.C1Themes.C1ThemeController.GetThemes()获取所有主题
然后设置
Action<Control> setTheme = null;
            setTheme = (c) =>
            {
                if (C1.Win.C1Themes.C1ThemeController.IsObjectThemeable(c))
                {
                    c1ThemeController.SetTheme(c, theme);
                }
                    
                foreach (Control cc in c.Controls)
                    setTheme(cc);
            };
            setTheme(form);

看你上面的代码,里面的主题有针对以下三种
c1 :C1.Win.C1Themes.C1ThemeController.GetThemes()
C1Ribbon: C1.Win.C1Ribbon..VisualStyle
Spread:FarPoint.Win.Spread.DefaultSpreadSkins
回复 使用道具 举报
tysoft
中级会员   /  发表于:2015-1-6 14:53:00
6#
本来是给你发源码的,一直收到腾讯的退信
回复 使用道具 举报
tysoft
中级会员   /  发表于:2015-1-6 16:11:00
7#
回复 4楼dof的帖子

你好,我发给你的源码收到没?
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2015-1-6 16:19:00
8#
回复 7楼tysoft的帖子

代码已经收到,我这边还在调试,已有进展我给你回帖。
回复 使用道具 举报
ZenosZeng讲师达人认证 悬赏达人认证
超级版主   /  发表于:2015-1-6 18:00:00
9#
我这边似乎缺少DLL引用,跑起来有以下错误:
“System.IO.FileNotFoundException”类型的未经处理的异常在 A4S.Controls.dll 中发生

其他信息: 未能加载文件或程序集“CrystalDecisions.CrystalReports.Engine, Version=10.5.3700.0, Culture=neutral, PublicKeyToken=692fbea5521e1304”或它的某一个依赖项。系统找不到指定的文件。

然后我直接将SpreadDesigner工程设置为启动项目,跑起来那三个按钮也没有问题。

你能不能在看看是否给我发的工程中缺少部分dll.
回复 使用道具 举报
tysoft
中级会员   /  发表于:2015-1-7 09:10:00
10#
回复 9楼dof的帖子

缺少的dll在里面,有一个文件夹叫DLL
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部