SimpleButton

本頁僅適用 WPF 專案

此按鈕是回應 Click 事件的內容控制項。在 Microsoft Expression Blend 中,按兩下按鈕並將元素拖曳至按鈕中,即置入按鈕內容。若要在按鈕中放置多個元素,則必須先新增版面配置面板 (例如 [格線] 或 [畫布])。根據預設,按鈕也可以顯示文字;若要編輯文字,可以用滑鼠右鍵按一下按鈕,然後按一下 [編輯文字]。

SimpleButton 控制項的畫板檢視

Cc295207.de21bfee-f104-48ff-9f8a-b6cbf92a9fa7(zh-tw,Expression.10).png

深入控制項範本

SimpleButton 控制項範本由下列項目所組成:

  • [格線版面配置面板]:用來在按鈕內容納多個子元素。Grid 可讓您更輕鬆地將更多元素新增至範本。例如,如果根元素是 [框線],且您嘗試新增另一個元素,則另一個元素會取代 ContentPresenter 元素,因為 [框線] 只能有一個子項。

  • [框線元素]:此元素有 BorderThickness 屬性,可以透過範本繫結至套用範本之按鈕控制項的 BorderThickness 屬性。

  • [ContentPresenter]:用來顯示套用範本之按鈕的 Content 屬性。此元素必須存在,才能顯示按鈕的內容。

    物件檢視:SimpleButton 控制項的基本部分 (範本)

    Cc295207.10b2afc9-ea71-4980-bbc6-5a78e0a4d2c4(zh-tw,Expression.10).png

Cc295207.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-tw,Expression.10).gif回到頁首

使用屬性觸發程序

控制項範本中的屬性觸發程序,可讓控制項回應屬性變更。您可以在 [互動] 面板中,按一下 [觸發程序] 底下的項目,檢視觸發程序啟動時變更的屬性。例如,在 SimpleButton 範本中,當 IsMouseOver 屬性變成 True 時,框線元素的背景會將色彩變更為 MouseOverBrush 資源。

Cc295207.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-tw,Expression.10).gif回到頁首

使用筆刷

在 SimpleStyles.xaml 資源字典中,SimpleButton 範本會使用下列筆刷資源:

  • 當沒有使用中的觸發程序時,Background 屬性會設為使用 NormalBrush;當 IsMouseOver 為 True 時會設為 MouseOverBrush;當 IsPressed 為 True 時會設為 PressedBrush;當 IsEnabled 為 False 時則會設為 DisabledBackgroundBrush

  • 當沒有使用中的觸發程序時,Border 屬性會設為使用 NormalBorderBrush;當 IsKeyboardFocused 為 True 時會設為 DefaultBorderBrush;當 IsPressed 為 True 時會設為 PressedBorderBrush;當 IsEnabled 為 False 時會設為 DisabledBorderBrush

  • 當 IsEnabled 為 False 時,Foreground 屬性會設為 DisabledForegroundBrush

Cc295207.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-tw,Expression.10).gif回到頁首

最佳作法與設計方針

  • 一般而言,如果您希望設計師在控制項上新增更多視覺元素,請使用 Grid 控制項作為範本的根。Expression Blend 會搜尋類似 Grid 控制項的版面配置面板,並且將它設為預設啟用,讓新增至畫板的新元素成為版面配置面板的子元素。

  • 根據使用者動作而定 (例如按一下按鈕),屬性觸發程序可用來變更控制項的外觀。屬性觸發程序比事件觸發程序更好用,因為同樣的工作需要兩個事件觸發程序 (例如,MouseDown 和 MouseUp 事件),但屬性觸發程序只需要一個 (例如,IsPressed 狀態)。不過,對於較複雜的控制項,事件觸發程序可用來啟動動畫時間軸。

  • 一般而言,您會想在 IsMouseOver、IsPressed 及 IsEnabled (False) 狀態上設定筆刷或視覺變化。此外,您也可以使用 IsKeyboardFocused 狀態,這通常是用在控制項周圍顯示虛線。

Cc295207.7e183f1f-37d8-4dcb-980c-19a5d61ca087(zh-tw,Expression.10).gif回到頁首

請參閱

概念

試試看:使用點陣圖效果建立按鈕

試試看:將動畫新增至按鈕

試試看:建立滑鼠指向效果按鈕