C# Winform中窗體的美化—— 用IrisSkin輕鬆實現換膚功能

今天經前輩提醒才知道winform窗體還有美化工具,呵呵,不得不說,孤陋寡聞了。下面總結一下irisskin2的使用步驟和遇到的問題及解決辦法。
一、網址: http://www.pc6.com/softview/SoftView_70918.html#download
皮膚控件換膚素材包,IrisSkin2.dll皮膚素材資源下載,這是一款與編程開發相關的素材資源,主要是提供一些採用IrisSkin2.dll控件進行軟件窗口換膚的素材文件,包括一些GIF圖像資源、一些ssk文件,壓縮包內一共有22種皮膚素材,使用說明:把控件拖到你的form上,只需一行代碼,便可實現整個form包括其全部控件的皮膚的更換, 
總共有幾十套皮膚供使用,很是方便。省去你設計開發軟件皮膚系統的時間和精力。 
所有源代碼就一行: skinEngine1.SkinFile = "WaveColor1.ssk"; 
其中ssk文件爲皮膚文件。 
若是上面的不行,就設置skinEngine1控件的SkinFile屬性,選擇相應的皮膚,記得把前面的路徑去掉,只要名字便可 
如SkinFile=G:\360Downloads\皮膚控件\皮膚\MP10\MP10.ssk,要將前面部分刪掉,只留皮膚名稱,即讓SkinFile=MP10.ssk;
 
一.添加控件IrisSkin2.dll。
 
方法:
        1.右鍵「工具箱」。「添加選項卡」,取名「皮膚」。
        2.右鍵「皮膚」,「選擇項」彈出對話框
        3.點擊「瀏覽「,找到IrisSkin2.dll,,next,next,肯定。
        4.在皮膚裏會出現。
        5.把SkinEngine拖到設計界面,會出如今下面。
 
     二,把皮膚文件中以ssk爲後綴名的文件(如OneGreen.ssk)放在bin文件夾的debug文件夾裏。
 
     三,添加代碼。
           雙擊界面,進入代碼,
        private void Form1_Load(object sender, EventArgs e)
        {
            skinEngine1.SkinFile = Application.StartupPath + @"\MP10.ssk";
 
        }
二、遇到的問題
(1)網址: http://www.cnblogs.com/xuhongfei/archive/2013/03/02/2939710.html
出現錯誤:類型 Universe 沒法解析程序集: System.Design, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a。 引發這個問題的緣由是新建項目時框架我選的是.Net4.0,然而.Net4.0在安裝時包含兩種,好像默認的是.Net4.0 Client Profile,在這下面添加時就會報上面的錯誤。

    解決方法是:在解決方案資源管理器中的工程項上點擊右鍵,選擇屬性,把FrameWork的框架版本改成.Net4便可。html

(2)網址:http://zhidao.baidu.com/link?url=YOvAeHLkOgmE-XKa7YnVFs4qE4a--5bsCKxweIDuYgHwU-TygCGKm1hePlWTDrQ4X9eIjOZfLaqVgWsp2eUgF_數據庫

 

 C# 錯誤!!容量超出了最大容量。參數名: capacity 

解決辦法:第二個參數 「提示信息」 長度太長了,2個字應該就能夠, 該成 "提示"
三、最後效果圖
第一次使用irisskin2美化C#窗體
在添加選項卡時,工具箱裏只有常規一個選項卡,右擊常規->添加選項卡,而後輸入選項卡的名字,最後在右擊常規選項卡,勾住所有顯示這個選項,剛剛添加的選項卡就能看見了。

第一次使用irisskin2美化C#窗體
最後效果圖
第一次使用irisskin2美化C#窗體

第一次使用irisskin2美化C#窗體

彈框這出現的錯誤上邊有,改爲提示兩個字就行了。
第一次使用irisskin2美化C#窗體
若是想把這個樣式應用到全部窗體中,就在屬性中把SkinAllForm設置成true,不想就是False。還有把SkinFile選擇樣式文件的路徑,而後才能顯示樣式。

第一次使用irisskin2美化C#窗體
skinEngine1.SkinFile = Application.StartupPath + @"\DiamondBlue.ssk";
 skinEngine1.SkinFile = " DiamondBlue.ssk "; //樣式文件的文件名
在窗體加載的方法中寫入這兩行代碼。


出處:http://blog.sina.com.cn/s/blog_e75e0d9d0102wxk6.html
=================================================================================================== 編程

IrisSkin2.dll是一款很不錯的免費皮膚控件,利用它能夠輕鬆的實現WinForm窗體換膚然而IrisSkin2.dll只能在.NET Faremwork 4.0以及以前的版本使用,因此要在VS2010中使用它須要將本身的項目框架設置爲.NET Framework 4.0,還有另外一種方法就是使用IrisSkin4.dll,他的使用方法和IrisSkin2.dll基本是徹底同樣的ruby

1、首先在網上下載 IrisSkin4.dll (已與皮膚一塊兒打包),將IrisSkin4.dll與Skins(皮膚)一塊兒拷貝到項目的\bin\Debug文件夾下框架

2、在程序的資源管理器中的【引用】上單擊右鍵,選擇【添加引用】,找到剛纔複製過來的IrisSkin4.dll文件,點擊【肯定】函數

3、【工具】——>【選擇工具箱項——>【.NET Framework組件】——>【瀏覽】——>找到IrisSkin4.dll——>點擊【肯定】,SkinEngine控件加入到工具箱工具

4、把控件添加進程序的主窗體,並在主窗體的構造函數中編輯以下一行代碼選擇皮膚,便可完成渲染post

skinEngine1.SkinFile = System.Environment.CurrentDirectory + "\\Skins\\所選皮膚名(後綴爲.ssk)";  //選擇皮膚文件

使用IrisSkin4.dll換膚的效果是有限的,有時它的渲染效果反而令咱們抓狂(好比我用了一個SportsBlue皮膚,而後發現雖然這個皮膚的樣式我很喜歡,但在它的渲染下窗體的button實在是很low),這時咱們想要自定義本身不滿意的控件而不須要皮膚對這些控件進行渲染,只需加上以下一行代碼:ui

skinEngine1.DisableTag = 9999;      //設置不須要被渲染的控件Tag值爲9999

而後把不須要被渲染的控件Tag值屬性設置爲9999,便可顯示該控件的自定義樣式this

 

出處:http://www.tuicool.com/articles/Q3euaa

===================================================================================================

    最近作一些C#數據庫開發項目,基本窗體程序作好以後,發現界面較爲醜陋,然而,本身又不善於美工,因此想到了求助於第三方幫忙。網上有較多的是利用IrisSkin2.dll文件來開發,而後,本人按照一些解決方案作下來,發現該連接庫並不會適合VS2010平臺開發的Winform,故此,尋找替代方案,而後,發現了IrisSkin4.dll比較合適的完成了美化工做。綜合別人的作法,本人作法以下:

下載地址:http://www.7edown.com/soft/down/soft_39263.html

    1. 將IrisSkin4.dll動態文件導入當前項目引用中。具體操做爲:解決方案資源管理器->當前項目->引用->右鍵->添加引用,找到IrisSkin4.dll文件,而後加入便可。建議,最好把IrisSkin4.dll文件放在當前項目\bin\Debug文件中。

   2. 而後把IrisSkin4.dll文件添加到VS2010的工具箱:視圖->工具箱->右鍵->選擇項->瀏覽找到IrisSkin4.dll文件(文件最好放在當前項目\bin\Debug文件中)按肯定,控件就添加到工具箱中了,而後把工具箱中新添加的 SkinEngine控件拖到當前項目中。

  3. 把皮膚目錄中的.ssk文件複製到當前項目\bin\Debug文件中,ssk文件能夠根據需求本身選擇.

  4. 再在項目中調用.ssk皮膚文件。例:

   在本身的主程序的MainForm窗口對應的 MainForm.Designer.cs中,先聲明private Sunisoft.IrisSkin.SkinEngine skinEngine1;而後是在InitializeComponent()  (Windows 窗體設計器生成的代碼)定義                                 

?
this .skinEngine1 = new Sunisoft.IrisSkin.SkinEngine(((System.ComponentModel.Component)( this )));  

最後,在MainForm.cs文件中構造函數定義:

?
this .skinEngine1.SkinFile = Application.StartupPath + "//DiamondBlue.ssk" ;

同時,爲了保證對其餘的窗體也產生相應的效果,則在MainForm對應的構造函數中,加入以下代碼:

?
1
    Sunisoft.IrisSkin.SkinEngine se = null ;
    se =
new Sunisoft.IrisSkin.SkinEngine();  
   se.SkinAllForm =
true ;

  

 

出處:http://www.cnblogs.com/zhaoxiaoming/archive/2012/07/25/Form_Beautify.html

===================================================================================================

外,因爲皮膚使用了不少的ssk文件以及dll文件,有時不想要這麼多的文件,只是想生成一個exe的應用程序,使用能夠把ssk和dll文件整合進exe文件中,具體的能夠參考個人另一篇文章:皮膚和DLL和圖片等項目文件徹底整合到exe中

相關文章
相關標籤/搜索