SimpleScrollBar
捲軸是一種簡單的控制項,會根據 [Value] 屬性在捲軸位置中顯示標記。在 Microsoft Expression Blend 中,您可以在 [屬性] 面板的 [版面配置] 下使用 [Orientation] 屬性來設定捲軸的方向。您可以在 [屬性] 面板的 [一般屬性] 下,設定捲軸的 [最大值]、[最小值] 及目前的 [值]。目前的值必須介於最小值和最大值之間。
SimpleScrollBar 控制項的 [畫板] 檢視
深入控制項範本
SimpleScrollBar 控制項範本由下列項目組成:
名稱為 GridRoot 的格線面板:在捲軸內用來放多個子元素。Grid 可讓您更輕鬆地將更多元素新增至範本。Grid 會分割成三列,最上和最下列已設定大小上限,因此不會擴展到超過 18 個像素 (與裝置無關的單位,約為 1/96 英吋);而中間那一列的大小則設為星號 (*),表示會在視窗擴展時一併擴展。
名稱為 DecreaseRepeat 和 IncreaseRepeat 的兩個 RepeatButton 元素:在捲軸上用來移動位置標記。RepeatButton 元素包含的內容會顯示箭號。同樣地,Grid 會當作這些元素的根,因此使用者可以輕鬆地編輯路徑元素 (名稱為 DecreaseArrow 和 IncreaseArrow) 以及新增其他內容。
名稱為 PART_Track 的 Track 元素:用來顯示沿著捲軸的 Thumb 元素。顯示的捲軸部分會加倍,變成名為 PageDown 和 PageUp 的 RepeatButton。這兩個元素都使用可個別編輯的 SimpleScrollRepeatButtonStyle 範本。追蹤的 IncreaseRepeatButton 和 DecreaseRepeatButton 區段會使用命令繫結,因此可以在捲軸類別上呼叫命令。捲動方塊元素會使用可個別編輯的 SimpleThumbStyle 範本。
版面配置轉換:用來顯示水平方向的滑桿。這項設計讓您不需費力編輯兩個不同的範本,省事許多。不過,如果需要使用兩個差異極大的方向,則需要不同的範本。在這種情況下,您可以在 Expression Blend 的 [XAML] 檢視中,於 <Style> 元素內使用 XAML 資源庫,根據方向切換範本。系統 ScrollBar 控制項的預設範本中可以找到這種情形的範例。
警告: 請勿重新命名以 "PART_" 作為名稱開頭的任何元素,因為實作控制項的程式碼會參照這些元素。
物件檢視:SimpleScrollBar 控制項的基本部分 (範本)
回到頁首
使用屬性觸發程序
控制項範本中的屬性觸發程序,可讓控制項回應屬性變更。您可以在 [互動] 面板中,按一下 [觸發程序] 下的項目,檢視觸發程序啟動時變更的屬性。例如在 SimpleScrollBar 範本中,當 Orientation 屬性為 Horizontal 時,就會變更多個屬性以反映進度列的新方向。
回到頁首
使用筆刷
SimpleScrollBar 範本只會對 Foreground 屬性使用一個系統筆刷資源。SimpleScrollBar 使用的範本 (例如 SimpleRepeatButton、SimpleThumbStyle 及 SimpleScrollRepeatButtonStyle 範本) 中會參照其他筆刷資源。您可以修改這些範本所使用的筆刷來變更 SimpleScrollBar 的外觀,或建立新的範本。
回到頁首
最佳作法與設計方針
一般而言,如果您希望設計師在控制項上新增更多視覺元素,請使用 Grid 控制項作為範本的根。Expression Blend 會搜尋類似 Grid 控制項的版面配置面板,並將其設為預設啟用,讓新增至畫板的新元素成為版面配置面板的子元素。
您可以將 SimpleScrollBar 範本套用至 ScrollViewer 的範本中使用的捲軸。
由於 SimpleScrollBar 範本會使用其他範本,因此逐層查看各種範本以找到您要變更的項目會很辛苦。若要直接編輯範本,您可以在 [資源] 面板中,按一下範本名稱旁的 [編輯資源] 按鈕。然後,在樣式的編輯模式下,以滑鼠右鍵按一下 [物件與時間軸] 下的 [樣式],指向 [編輯控制項組件 (範本)],然後按一下 [編輯範本] 或 [編輯複本]。或者,更簡單的方法是直接刪除對子範本的參照 (在 [屬性] 面板的 [雜項] 下重設 [Style] 屬性),然後在第一個層級上設計範本。
為了讓控制項正常運作,您必須在控制項的類別上保留會引發命令的命令繫結,並提供另一種方法在控制項和代表該控制項的類別之間建立合約。這些繫結會出現在 IncreaseRepeat、DecreaseRepeat、PageUp 和 PageDown 元素的 Command 屬性中以及 Orientation=Horizontal 觸發程序中。
若有需要,您可以將觸發程序新增至 SimpleScrollBar 範本,或修改 PART_Track 元素中的元素,讓捲軸看起來更為有趣,但請勿重新命名 PART_Track 元素或子元素,因為實作控制項的程式碼會參照這些元素。PART_Track 元素會知道如何找到其組件,因為這些組件都放在特定控制項標題下:Track.IncreaseRepeatButton、Track.DecreaseRepeatButton 和 Track.Thumb。捲動方塊也是一種特殊的 Windows Presentation Foundation (WPF) 控制項,可控制進行拖曳的方式。
回到頁首