日期:2014-05-18  浏览次数:20759 次

clickonce 部署后关于皮肤的问题 IrisSkin2
部署的时候皮肤控件的dll都选择了skinEngine1

  发布的时候 应用程序文件中已将皮肤控件的dll选择为必需,而且服务器端也下载了相关的dll,客户端安装的时候也没报错,为什么皮肤没变呢?我用的是skinEngine1 
 
 
Sunisoft.IrisSkin.SkinCollectionItem item = new Sunisoft.IrisSkin.SkinCollectionItem(System.Windows.Forms.Application.StartupPath + "\\skin\\Midsummer.ssk");
  this.skinEngine1.AddtionalBuiltInSkins.Add(item);
  this.skinEngine1.ApplyAdditionalBuiltInSkins(0);

代码是 这样写的。



------解决方案--------------------
我没用过IrisSkin2。。。。。。不过遇到过类似的问题

某些三方换肤控件,在遇到系统有某些主题(比如操作系统使用了主题的时候)的时候默认就不换肤了。。
通常有属性可以控制三方换肤软件进行强制换肤
------解决方案--------------------
没遇到过
------解决方案--------------------
我觉得是路径问题。ClickOnce会在客户端一个很深的路径创建Application。

因此,你需要在ClickOnce配置的时候,即Pulish > Application Files > 你的皮肤文件、CHM文件 > Publish Status 设置为 Include
------解决方案--------------------
.ssk 的属性 -> Build Action 检查是否是 Content ?
(选中.ssk 文件,右击,属性)