若是須要查看更多文章,請微信搜索公衆號 csharp編程大全,須要進C#交流羣羣請加微信z438679770,備註進羣, 我邀請你進羣! ! !編程
C# WinForm項目中自帶的窗體風格很普通,一點都不美觀。DotNetBar就是一套.NET美化控件庫,有70幾個控件以及多種界面的皮膚風格。關於控件的效果在官網上進行查看http://www.devcomponents.com/dotnetbar/。下面就來介紹一下如何使用DotNetBar來改變窗體的風格。微信
1.添加DoNetBar的程序集。函數
DevComponents.DotNetBar.Design.dll 控件在設計時可見所必要的程序集this
DevComponents.DotNetBar2.dll 控件所在的程序集spa
2.創建一個窗體類FrmTest
,並在FrmTest的代碼文件中添加using DevComponents.DotNetBar;
引用,並把窗體的基類Form
更改爲Office2007Form
,以下所示:設計
using DevComponents.DotNetBar;code
namespace wind{ component
public partial class FrmTest : Office2007Form
{ public FrmTest() orm
{
InitializeComponent();
}
}
}blog
3.打開FrmTest窗體的設計面板就能夠發現窗體的風格已經變成了office2007 的風格了
窗體在設計時已經改變其風格了,可是在運行時,窗體的風格依然是WinForm自帶的窗體效果,貌似更改窗體的繼承基類不起做用,在網上找了一些資料,發現須要在窗體的構造函數的最前面加上下面這樣一句代碼。
public FrmTest()
{ this.EnableGlass = false;//關鍵,
InitializeComponent();
}
}
這下,窗體在運行時,也是office2007的風格。
4.到目前爲止,咱們已經可以更改窗體的風格了,可是如今還不能爲整個項目變換風格,咱們須要使用一個StyleManager
來控制整個項目的風格,拖一個StyleManager
控件到窗體上,這樣就把窗體和風格管理控件進行關聯。經過更改StyleManager
控件的ManagerStyle
屬性就能夠實現整個項目的換膚,下面作一個簡單的示例來演示一下這種效果。
5.界面設計以下:
6.窗體代碼以下。
string[] skinNames = { "Office2007Blue", "Office2007Silver", "Office2007Black", "Office2010Silver", "Office2013" }; private void FrmTest_Load(object sender, EventArgs e) { foreach (string skin in skinNames) { this.cmbSkin.Items.Add(skin); } } private void buttonX1_Click(object sender, EventArgs e) { switch (this.cmbSkin.Text) { case "Office2007Blue": this.styleManager1.ManagerStyle = eStyle.Office2007Blue; break; case "Office2007Silver": this.styleManager1.ManagerStyle = eStyle.Office2007Silver; break ; case "Office2007Black": this.styleManager1.ManagerStyle = eStyle.Office2007Black; break; case "Office2010Silver": this.styleManager1.ManagerStyle = eStyle.Office2010Silver; break; case "Office2013": this.styleManager1.ManagerStyle = eStyle.Office2013; break; } }
這下就實現了窗體的總體皮膚變換,不單單窗體的風格變了,還包括窗體上的控件也會發生改變,甚至整個項目的窗體以及上面的控件都會發生改變,下面將演示一下效果。
固然使用DotNetBar的界面沒有常規界面那麼穩定。