C# WinForm開發系列 - TextBox
包含金額/日期輸入框,帶彈出數字面板的計算輸入框,安全密碼輸入等控件(文章及相關代碼搜集自網絡,僅供參考學習,版權屬于原作者! ).
1.CalculatorBox CalculatorBox.rar
3.金額輸入框 currency_textbox.zip CurrencyBox.rar NumberPicker_src.zip NumericTextBox_src.zip NumberedTextbox.rar
4.日期輸入框 DateEdit.rar
6.擴展RichTextBox功能 RichTextBoxExtended.zip
8.Anders Cui
Windows Forms中通過自定義組件實現統一的數據驗證(一)
Windows Forms中通過自定義組件實現統一的數據驗證(二)
Win Form程序中的輸入驗證控件
拖放文件中的文本到 textbox 控件
C#挖掘Internet網絡域名拓撲圖
10.Office 2007 Ribbon 風格的按鈕和菜單[轉載]
翻譯
Juan Pablo G.C.著Improved and Recoded RibbonMenuButton
簡介
首先,感謝大家。我非常感謝大家對本文的努力給與了高度的評價。我記得當我16歲的那年,我見到了各種各樣的軟件、應用程序和游戲,而對于我來說,當時根本不可能達到或開發這樣的軟件。然而,從此以后,我學習了許多,如今,我已經能夠很輕易地完成這樣的軟件。而且,如果我能夠幫助誰實現絢麗的應用程序,我決定他們可以自由地使用我的代碼。
背景
此前,我一直在考慮如何做一個全定制的按鈕,以及改變RGB元素究竟有多么難。我決定做一個能夠提供很多操作顏色的類RibbonColor。如果你運行一下demo程序,并移動Hue,Sat或Brightness的TrackBar,就會很快明白我上面說的。我必須承認接近70%的RibbonControl鏈接庫已經完成。然而,當人們迫切地希望使用改善過的代碼,并告訴我我沒有對我的代碼作很多解釋的時候,我決定把自己當作啞巴。:)
如何使用代碼
首先,創建一個新的Windows應用程序。在解決方案瀏覽器中,選擇Add Existing Item選項,然后選擇RibbonMenuButton.cs文件,重新編譯你的項目。這時,如果你點擊form designer,在toolbox中,就會有一個新的子項RibbonMenuButton。把它拖到你的form上。從表面上看不出控件的特殊性,不過,請看屬性瀏覽器。首先給RibbonMenuButton設定屬性。
在你設置完屬性,添加了一個圖片,設置好文字,如果有的話,還可以設置字體為Segoe UI,然后,按鈕就會變成下面的樣子:
如果你已經編譯了項目,并得到了上圖的結果,接下來的事情就是改變控件的屬性了。讓我們看看每一個屬性都代表著什么意思。推薦大家看看Demo工程中的按鈕的屬性:
Arrow:在右邊或下面畫一個箭頭。只有當雙double功能設置在another屬性的時候,箭頭才會畫出來。
Colors:我想這個不需要解釋了;推薦大家使用PlayGround程序選擇你的顏色。
FadingSpeed:顏色間的淡出速度,0不淡出。
GroupPos:在左右上下設置圓角。
ImageLocation:設置圖片位置,上下左右。
ImageOffset:圖片相對邊框的偏移。
MaxImageSize:限制圖片大小,以使得按鈕比圖片大。
Radius:圓角的半徑
ShowBase:如果你想顯示BaseColor 和BaseStroke 顏色,設置成yes,此處Transparent 是一個顯示淡出的顏色。
SplitButton:創建一個雙double功能的按鈕,箭頭打開與之聯系的ContextMenu 和其它組件。
SplitDistance:箭頭按鈕大小
Title:如果這個屬性設置成非空字符串,控件會自動把Title加粗,把text顯示在它的下面。
Text:如果你已經設置了一個Title,并希望多行顯示文本,在其中加上"\n"。
KeepPress, IsPressed:如果在某些按鈕上激活KeepPress,當其中一個按下的時候,控制器中的其它控件會失去ispress屬性。
興趣
如果你想更多地了解這個控件,推薦看一下這些:
this.Region:這是一個避免透明事件的好方法。
LinearGradient:當多顏色時,它使得漸變更容易。
MeasureString:它用于顯示文本的位置,因為你必須去除base.OnPaint,而自己完成每一件事,包括顯示文字。
TransformColors:包括Alpha opacity的方法
DrawArc:完成圓角部分
OnMouseUp:當SplitButton和IsPressed被激活的時候,完成某些功能。
RibbonColor:計算公式來自于Wikipedia 和Gimp。系統自帶的System.Drawing.Color.GetHue, Sat 和Brightness不是特別好用。
關于原文作者 Juan Pablo G.C.
I'm an Electronic Engineer, I did my end degree project at Astrophysical Institute and Tech Institute. I'm HP Procurve AIS and ASE helping at University, and I'm getting ready for Microsoft MCTS.
I live in Canary Islands. At the moment Im developing a CRM software for my company. I'm really interested know people getting the MCTS.
I'm an SQL Server and .net2.0 intermediate expert.
Take a look to my blog Juan Pablo G.C.
Overrider:http://overrider.blogspot.com/