入口是这样写的,这时候运行程序有皮肤 
public partial class SalesTax : Form
    {
        private string skin = "Longhorn.ssk";
        public SalesTax()
        {
            InitializeComponent();
            skinEngine1.SkinFile = skin;
        }
然后我想通过点击按钮把界面更换为 别的皮肤
        private void toolStripMenuItem2_Click(object sender, EventArgs e)
        {
            skin = "Longhorn.ssk";   // 选择皮肤
        }
点击按钮之后,没有什么反应,是不是得刷新什么的,百度了一下,读配置文件等不会,菜鸟,有大大能帮忙看看 按钮这个怎么实现呢?

解决方案 »

  1.   

    skinEngine1应该还有一些方法用来更新界面吧,你好好看看他提供的接口
      

  2.   


    接口? skinEngine1 事件里有 这个 skinEngine1_CurrentSkinChanged  这不是用这个改呀
     网上有的说用Dispose() 貌似不行
      

  3.   

    樓上說的那些都是垃圾皮膚控件,,,我敢肯定地說這個是皮膚控件最好的,不信?你白活了http://www.skin-soft.co.uk
    cracked
    http://ufo-crackerx.blog.163.com/blog/static/1130787782011112482439324/
      

  4.   

    private void toolStripMenuItem2_Click(object sender, EventArgs e)
      {
      skin = "Longhorn.ssk"; // 选择皮肤
      }

    你这个地方只是赋值 skin字符串了呀,没有进行更换皮肤啊 应该加上
     skinEngine1.SkinFile = skin;
    这句就可以了吧
      

  5.   

    怎么最后没有skinEngine1.SkinFile=skin?
      

  6.   

    网上搜索一下 “c# 皮肤” 或“winform 皮肤”  我记得有好多现成的例子,我下载过一些 人家已经实现了你说的这些点击一下按钮就换张皮肤 不过我记得那个例子是用多个按钮实现的 不过应该和一个按钮一样吧
      

  7.   

    你再试一次 我的更换皮肤控件跟你的应该是一样滴,我测试了下一下代码是可以滴啊
     private void Form1_Load(object sender, EventArgs e)
            {
                skinEngine1.SkinFile = "MSN.ssk";
            }        private void button1_Click(object sender, EventArgs e)
            {
                skinEngine1.SkinFile = "MP10.ssk";
            }
      

  8.   

    你們是否喜歡它多bug,然後告訴客戶要升級了,騙他們的錢?
      

  9.   


    可以啦 现在 原来是我的那个没有这个 private void Form1_Load(object sender, EventArgs e)我加上这个以后 就可以了 谢谢 各位提建议的  大大 非常感谢