Winform開發架構之Office Ribbon介面

來源:互聯網
上載者:User

標籤:winform   datagridview   style   c   class   blog   

在前面幾篇文章介紹我的Winform架構隨筆文章,包括有《Winform開發架構之字典資料管理》、《Winform開發架構之許可權管理系統》、《Winform開發架構之終極應用》,其中Winform開發架構之終極應用是集眾多功能與一身,提供綜合一站式、整體性的傳統應用系統的開發架構,在此基礎上開發新的業務系統,開發工作則是事半功倍,而且提供了高效、統一的介面布局以及支援多種資料庫的資料訪問層支援,提供了基於大量資料的資料分頁解決方案,提供了傳統Excel報表以及自訂模板的進階Excel報表的解決方案支援。我們先回顧一下架構的整體介紹圖片。

  

 基於上面的內容,我在之前《》中開發了一套基於傳統介面的架構,如下所示:

 

這種介面是較為傳統的介面架構,統一性及美觀性都是比較標準的Winform介面,由於本人之前研究開發過基於DotNetBar架構的Office Ribbon樣式的Winform介面,詳細可以參考文章《如何使用dotnetbar控制項來構造多重文件介面》 ,因此本人想把這些介面樣式整合到我的Winform開發架構中,作為另外一種介面樣式的Winform開發架構。經過周末不少時間的整理改造,成功改造原有傳統的Winform開發架構介面,介面效果如下所示:

 
另外編輯介面也適當調整為:

 
以上介面樣式和傳統的介面開發架構有不少的差別,通過利用Office2007 Ribbon樣式,可以放置更多的功能按鈕,並像Office2007那樣,可以摺疊起來更有效利用介面空間,而且也能夠給使用者較為絢麗的介面,使得你的應用程式在客戶中獲得較高的印象分數。

整個介面工程如下所示:

 

雖然使用了基於DotNetBar控制項改造了Winform介面,但是和之前的開發架構,介面之間的繼承關係並沒有變化,都是遵循下面的原則: 

1、停靠在主表單中的介面繼承自基類BaseDock;

2、彈出的普通表單,繼承自基類BaseForm;

3、彈出的資料編輯表單,繼承自BaseEditForm,而BaseEditForm繼承自BaseForm。

通過不同的繼承基類,我封裝了不同的處理函數,節省了子類的重複代碼,並增強了Winform介面的統一性、良好封裝性、良好可操作性。


下面總結幾個介面改造過程中注意的事項:

1、如果是從已有Winform表單中轉換的話,需要把原有的TextBox控制項、Label控制項、ComboBox控制項調整為TextBoxX、LableX、ComboBoxX控制項外,還需要修改TextBox的Border.Class為TextBoxBorder(預設添加的TextboxX控制項有該樣式),否則樣式沒有邊框,不好看;ComboBoxX控制項的DrawMode修改為OwnerDrawFixed,否則同樣沒有邊框,不好看。另外,如果Label或者文本控制項的背景色存在白色,通過選定控制項,拉動一下即可解決該問題。

2、雖然表單整合自Office2007Form,介面已經有一些Office的介面效果了,不過為了好看,最好在表單介面中添加一個PanelEx這樣的控制項,介面儘可能不要GroupBox控制項,而是用PanelEx這樣的控制項來代替,這樣效果好一些。

 

 
3、布局使用DotNetBar控制項中的Bar控制項或者Tab控制項來替代原有的Weifenluo控制項,這樣整體性會好一些。

4、封裝Bar控制項,使之在建立表單的時候,更加方便,而不需要更多的代碼,如在主表單中增加一個表單,代碼如下即可:

SetMdiForm(new FrmItemDetail(), "備件資訊"); 

5、利用DataGridViewEx來替換預設的 DataGridView控制項,整體效果也會更加好一些,用法是一樣的。

 

基於Dotnetbar的Office2007最新Winform架構程式,

可以從網站地址http://www.iqidi.com/download/warehouseMis_dotui.rar 下載

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.