轉(zhuǎn)帖|行業(yè)資訊|編輯:龔雪|2023-08-18 10:12:38.460|閱讀 126 次
概述:本文將為大家介紹在WinForm框架下如何開發(fā)一個(gè)Office Ribbon界面,歡迎下載相關(guān)組件體驗(yàn)~
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
在前面幾篇文章Winform框架的文章中,包括《Winform開發(fā)框架之字典數(shù)據(jù)管理》、《Winform開發(fā)框架之權(quán)限管理系統(tǒng)》等,包含了集眾多功能與一身,提供綜合一站式、整體性的傳統(tǒng)應(yīng)用系統(tǒng)的開發(fā)框架,在此基礎(chǔ)上開發(fā)新的業(yè)務(wù)系統(tǒng),開發(fā)工作則是事半功倍,而且提供了高效、統(tǒng)一的界面布局以及支持多種數(shù)據(jù)庫的數(shù)據(jù)訪問層支持,提供了基于大量數(shù)據(jù)的數(shù)據(jù)分頁解決方案,提供了傳統(tǒng)Excel報(bào)表以及自定義模板的高級(jí)Excel報(bào)表的解決方案支持。我們先回顧一下框架的整體介紹圖片。
PS:給大家推薦一個(gè)C#開發(fā)可以用到的界面組件——DevExpress WinForms,它能完美構(gòu)建流暢、美觀且易于使用的應(yīng)用程序,無論是Office風(fēng)格的界面,還是分析處理大批量的業(yè)務(wù)數(shù)據(jù),它都能輕松勝任!
DevExpress技術(shù)交流群8:523159565 歡迎一起進(jìn)群討論
基于上面的內(nèi)容,開發(fā)了一套基于傳統(tǒng)界面的框架,如下所示:
這種界面是較為傳統(tǒng)的界面框架,統(tǒng)一性及美觀性都是比較標(biāo)準(zhǔn)的Winform界面。由于我們想要把這些界面樣式整合到Winform開發(fā)框架中,作為另外一種界面樣式的WinForms開發(fā)框架。經(jīng)過整理和改造,成功改造原有傳統(tǒng)的Winform開發(fā)框架界面,界面效果如下所示:
另外編輯界面也適當(dāng)調(diào)整為:
以上界面樣式和傳統(tǒng)的界面開發(fā)框架有不少的差別,通過利用Office2007 Ribbon樣式,可以放置更多的功能按鈕,并像Office2007那樣,可以折疊起來更有效利用界面空間,而且也能夠給用戶較為絢麗的界面,使得你的應(yīng)用程序在客戶中獲得較高的印象分?jǐn)?shù)。
整個(gè)界面工程如下所示:
雖然使用了基于DotNetBar控件改造了Winform界面,但是和之前的開發(fā)框架,界面之間的繼承關(guān)系并沒有變化,都是遵循下面的原則:
1、停靠在主窗體中的界面繼承自基類BaseDock;
2、彈出的普通窗體,繼承自基類BaseForm;
3、彈出的數(shù)據(jù)編輯窗體,繼承自BaseEditForm,而BaseEditForm繼承自BaseForm。
通過不同的繼承基類,我封裝了不同的處理函數(shù),節(jié)省了子類的重復(fù)代碼,并增強(qiáng)了Winform界面的統(tǒng)一性、良好封裝性、良好可操作性。
下面總結(jié)幾個(gè)界面改造過程中注意的事項(xiàng):
1、如果是從已有Winform窗體中轉(zhuǎn)換的話,需要把原有的TextBox控件、Label控件、ComboBox控件調(diào)整為TextBoxX、LableX、ComboBoxX控件外,還需要修改TextBox的Border.Class為TextBoxBorder(默認(rèn)添加的TextboxX控件有該樣式),否則樣式?jīng)]有邊框,不好看;ComboBoxX控件的DrawMode修改為OwnerDrawFixed,否則同樣沒有邊框,不好看。另外,如果Label或者文本控件的背景色存在白色,通過選定控件,拉動(dòng)一下即可解決該問題。
2、雖然窗體集成自O(shè)ffice2007Form,界面已經(jīng)有一些Office的界面效果了,不過為了好看,最好在窗體界面中添加一個(gè)PanelEx這樣的控件,界面盡可能不要GroupBox控件,而是用PanelEx這樣的控件來代替,這樣效果好一些。
3、布局使用DotNetBar控件中的Bar控件或者Tab控件來替代原有的Weifenluo控件,這樣整體性會(huì)好一些。
4、封裝Bar控件,使之在創(chuàng)建窗體的時(shí)候,更加方便,而不需要更多的代碼,如在主窗體中增加一個(gè)窗體,代碼如下即可:
SetMdiForm(new FrmItemDetail(), "備件信息");
5、利用DataGridViewEx來替換默認(rèn)的 DataGridView控件,整體效果也會(huì)更加好一些,用法是一樣的。
本文轉(zhuǎn)載自:
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn
文章轉(zhuǎn)載自: