使用WPF建立炫亮按鈕
1. 建立三個按鈕(建立多個按鈕的目的是作對比及樣式演示)
(1)開啟Microsoft Expression Blend 2(我這裡是August Preview版本,以下簡稱Blend)
(2)File -> New Project,預設選中的是第一個:WPF Applications(.exe),進行相關設定後按OK,如圖:
(3)此時回到剛才建立位置C:\Books\ButtonDemos目錄中檢視時,檔案結構如下圖:
注意其中的App.xaml,Window1.xaml系列檔案(此處之系列代表以之開頭的所有檔案,比如App.xaml, App.xaml.cs檔案,下同)。
(4)在Blend操作窗右邊的Project中將Window1.xaml更名為ButtonDemos.xaml,改名之後相應的cs檔案也自動更改為新的檔名,比如ButtonDemos.xaml.cs。
(5)從左邊工具箱中點選“Button”按鈕,在中間內容區拖出一個按鈕,同理,在右邊Properties選項卡中將Name改為:btnDemo1, Common Properties項的Content框中輸入"Demo 1",這將是按鈕顯示的文字內容。
(6)選中此按鈕,按右鍵,點View Xaml,將看到如下程式碼:
(7)轉到Design模式,選中剛才這個名為“btnDemo1”的按鈕,複製,貼上,拖動到下面位置,設定Name為:btnDemo2, Content: Demo 2;
(8)再重複步驟(7),做Demo 3按鈕。
2、製作一個漂亮的按鈕
(1)在Design模式下,選中剛才這個名為“btnDemo1”的按鈕,複製,貼上,拖動到右邊位置,設定Name為:btnDemo1_Copy, Content: Demo 1 Copy;
(2)設定右邊這個btnDemo1_Copy按鈕:
在Properties選項卡中Brushes摺疊選項內點選Backgound項,之後點選下面的Gradient Brush(再按照Photoshop做漸變畫筆一樣)選擇/調整顏色設定,如下圖:(如果你用過Photoshop,你會發現是何等的相似,而操作方法亦是如此)
在上圖Options處選擇Reflect(即保持其前面被勾選),得到如下按鈕樣式:
(3)讓我們來看看這個按鈕的程式碼:
(關於程式碼中的含義,以及如何使用C#程式碼一一實現它,我有時間的話,再一一道來,在此按下不表)
(4)如法炮製,製作另外一個按鈕:
3、使用Application.Resources設定按鈕屬性(類似CSS樣式單):
(1)定義Application.Resources塊:開啟 app.xaml 檔案,我們可以看到裡面有下面XML片段:
<!-- Resources scoped at the Application level should be defined here. -->
(2)將中間<!-- -->部分換成以下程式碼(敬請留意:其中黃色底且加粗的部分是上面第2步中(3)中按鈕的XAML程式碼,但在標籤的開頭處加了一個x:Key的屬性,其值是“GrayBlueGradientBrush”):
值得一提的是,x:Key用來是漸變畫刷的唯一名稱。
這裡有必要解釋一下紅色文字部分中Style標記的內容:
首先,Style的TargetType屬性值中“{}”括起的部分內容是要表明Style所要發揮作用的控制元件型別名稱;其次,Style標籤中,有一項
至此,完整的XAML內容為:
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
x:Class="ButtonDemos.Window1"
x:Name="Window"
Title="Window1"
Width="640" Height="480" Background="#FF000000">
(3)好了,按F5,得到下面的結果:
我們發現,所有隻要是那些沒有設定過Background屬性的所有Button的背景全部換成了與Demo 1 Copy按鈕一樣的背景色了!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14601556/viewspace-528480/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Simple WPF: WPF 自定義按鈕外形
- WPF 按鈕背景圖片
- Simple WPF: WPF 實現按鈕的長按,短按功能
- WPF Button按鈕設定圓角
- FloatingDragButton:炫酷的拖拽浮動按鈕
- 自定義一個酷炫的提交完成按鈕
- 按鈕上面的按鈕 (轉)
- SVG 建立 Material Design 波紋效果按鈕SVGMaterial Design
- SVG建立Material Design波紋效果按鈕SVGMaterial Design
- C# winForm 建立水晶風格的按鈕C#ORM
- 精選10款CSS3實現的酷炫按鈕效果CSSS3
- 按鈕
- Unity使用小劇場—建立的按鈕On Click()只有MonoScript怎麼辦UnityMono
- QT中使用Event Filter監聽按鈕事件,Release後按鈕不見QTFilter事件
- Pew:川普就職後“憤怒”按鈕成Facebook使用者使用最多的按鈕
- 炫酷實用的jQuery外掛 涵蓋選單、按鈕、圖片jQuery
- 超炫酷3D立體的CSS3彈性按鈕3DCSSS3
- SAP CRM note建立按鈕被禁用的原因分析
- 如何在鬆弛中建立互動式按鈕
- 建立WINDOWS XP樣式的ActiveX按鈕 (轉)Windows
- Qt更改按鈕樣式 (以QSpinBox使用左右按鈕樣式為例)QT
- 按鈕禁用
- Bootstrap 按鈕boot
- 動態建立具有刪除行按鈕的table表格
- 建立漂亮的 CSS 按鈕的 10 個程式碼片段CSS
- adobe flash建立按鈕並新增動作【Z】
- Android 學習筆記四:建立工具欄按鈕Android筆記
- 建立SWING風格的按鈕控制元件 (轉)控制元件
- Godot遍歷目錄下檔案,並建立按鈕Go
- Fiori Elements List Report table 裡的普通按鈕,Global 按鈕 和 Determining 按鈕
- 窗體(文字框,按鈕,單選按鈕,標籤)
- VC 點陣圖按鈕CBitmapButton的使用
- javascript閉包的使用–按鈕切換JavaScript
- 如何使用angularjs實現按鈕事件AngularJS事件
- WPF中的ListBox怎麼新增刪除按鈕並刪除所在行
- 小程式按鈕
- Flutter Button(按鈕)Flutter
- iOS 按鈕動畫iOS動畫