共用方式為


PasswordBox 控制項樣式提示

Ee341382.0b2c798e-86c6-4ea2-a8a6-5cf1f12be1e2(ZH-TW,Expression.30).png

PasswordBox 控制項代表可在遮蔽輸入字元的情況下取得使用者輸入資訊的物件。

PasswordBox 控制項和所有控制項一樣,可以修改成與預設外觀完全不同。PasswordBox 控制項的預設外觀如下:

Ee341382.4e1556e5-03f0-4881-8283-8281cb11c978(ZH-TW,Expression.30).png

相關的 PasswordBox 控制項屬性

PasswordBox 控制項是文字控制項。如果您想要在 PasswordBox 控制項的內部顯示字元,可以在 [屬性] 面板中設定 [一般屬性] 下的 [Password] 屬性。[Password] 屬性會保留使用者輸入的文字。

您可以藉由變更 [PasswordChar] 屬性 (在按一下 [屬性] 面板之 [文字] 類別底部的 [顯示進階屬性] Ee341382.de239c9d-42ce-4f5e-83b9-5f9924c0431f(ZH-TW,Expression.30).png 後即會出現),變更使用者在 PasswordBox 控制項內輸入文字時出現的遮罩字元。

您可以用下列方式設定這些屬性:

  • 設定物件的屬性   在畫板上繪製 PasswordBox 物件後,您可以直接設定物件的屬性。如果您想讓幾個 PasswordBox 控制項使用相同的值,請在樣式中設定這些屬性。

  • 在樣式中設定屬性   如果您在 PasswordBox 物件的樣式 Ee341382.94fa7fc4-4f3e-4e84-9ba1-287f1b894371(ZH-TW,Expression.30).png 中設定這些屬性,任何使用該樣式的 PasswordBox 物件都會使用這些值。您可以覆寫特定物件的值。

    如需詳細資訊,請參閱建立樣式

若要指定使用者在 PasswordBox 控制項輸入密碼後發生的事件,請將 [PasswordChanged] 事件連接至事件處理常式。

如需詳細資訊,請參閱撰寫回應事件的程式碼

PasswordBox 範本的組件

PasswordBox 控制項使用一個範本來定義其外觀:PasswordBox 範本。這個範本的單一組件都會影響套用範本之 PasswordBox 物件的外觀和行為。

範本中可以有其他用來裝飾 PasswordBox 控制項外觀的物件,但是下表列出的是在合約中與控制項行為繫結的組件。

若要檢視範本的組件,請在修改範本時開啟 [組件] 面板。在 [物件與時間軸] 面板中,如果物件扮演的角色是 [組件] 面板中的組件,該物件旁會出現 Ee341382.6cf58c39-edba-4a0e-acbc-1da272f9a387(ZH-TW,Expression.30).png 圖示。

Ee341382.5b6101ee-86c4-48c6-a025-664d28142285(ZH-TW,Expression.30).png

組件名稱

物件類型

描述

ContentElement

FrameworkElement

此物件可在使用者輸入密碼時顯示遮罩字元。

此組件為強制組件。

PasswordBox 範本中的其他物件是用來變更 PasswordBox 控制項在不同狀態中的外觀。

PasswordBox 控制項的狀態

根據預設,PasswordBox 控制項可以處於 [CommonStates] 狀態群組中的下列四種狀態其中一種,您可以在修改 PasswordBox 範本時於 [狀態] 面板中檢視狀態:

狀態名稱

描述

Normal

PasswordBox 控制項沒有互動時的外觀。

MouseOver

使用者將指標移到 ComboBox 控制項上方時,控制項所顯示的外觀。

Pressed

當使用者按一下 PasswordBox 控制項,或當 PasswordBox 控制項具有焦點,且使用者按 ENTER 或空格鍵時,該控制項的外觀。

Disabled

IsEnabled 屬性設為 False 時,PasswordBox 控制項的外觀。

PasswordBox 控制項可以處於 [FocusStates] 狀態群組的下列兩種狀態之一:

狀態名稱

描述

Unfocused

PasswordBox 控制項沒有鍵盤焦點時的外觀。

Focused

PasswordBox 控制項具有鍵盤焦點時的外觀。例如,使用者可能會按 TAB 鍵來循環顯示應用程式中的物件,直到鍵盤焦點停留在 PasswordBox 控制項為止。

PasswordBox 控制項可以處於 [ValidationStates] 狀態群組的下列三種狀態之一:

狀態名稱

描述

Valid

PasswordBox 控制項有效時的外觀。

InvalidUnfocused

PasswordBox 控制項無效且沒有鍵盤焦點時的外觀。

InvalidFocused

PasswordBox 控制項無效但具有鍵盤焦點時的外觀。

Ee341382.alert_tip(ZH-TW,Expression.30).gif秘訣:

狀態群組包含屬於相同邏輯類別但無法同時顯示的視覺狀態。例如,[CommonStates] 群組包含的狀態與使用者和輸入裝置 (例如滑鼠) 的互動有關。雖然控制項一次只能顯示同一狀態群組中的一種狀態,但卻可以同時顯示來自不同狀態群組的兩種狀態。

當您選取狀態時,狀態錄製功能便會開啟,以錄製您對該狀態所做的任何變更。若要關閉狀態錄製功能,請按一下錄製按鈕 Ee341382.0dcc6415-6d4e-4fcf-a9a3-eb4664cb6cbc(ZH-TW,Expression.30).png,或在 [狀態] 面板中選取 [基本]。若要修改控制項在兩種個別狀態同時作用時的外觀,您可以鎖定其中一個狀態群組之狀態的預覽,同時修改另一個狀態群組中的狀態。

將物件轉換成 PasswordBox 控制項

若要修改 PasswordBox 控制項的範本,請執行下列一項動作:

  • 在畫板上繪製 [PasswordBox ] Ee341382.343296b4-5c7d-4145-84cc-91b08ba67a1b(ZH-TW,Expression.30).png,然後再建立預設範本的複本。

    如需詳細資訊,請參閱建立或修改範本

  • 藉由繪製物件或匯入圖案來設計 PasswordBox 控制項的外觀,然後再使用 [變成控制項] 命令。

如果使用 [變成控制項] 命令,請依照下列步驟,確保您會建立 PasswordBox 範本需要的所有物件:

  1. 將物件群組為版面配置面板、選取版面配置面板,接著在 [工具] 功能表上按一下 [變成控制項]。

  2. 在出現的對話方塊中,選取 [PasswordBox]、為範本命名,然後選取範本的儲存位置。

    如需有關位置的詳細資訊,請參閱建立資源

  3. 在您按一下 [確定] 之後,Microsoft Expression Blend 便會進入範本編輯模式,並顯示組成 PasswordBox 控制項的物件。

  4. 如果範本中包含要用來顯示文字的物件 (例如 TextBlock 物件),請以滑鼠右鍵按一下該物件,指向 [變成 PasswordBox 的組件],然後再按一下 [ContentElement]。否則,請按兩下 [組件] 面板中的 [ContentElement] 組件,在範本中建立 Grid 物件,以當作 [ContentElement] 組件。請修改 [屬性] 面板之 [版面配置] 類別中的屬性,將新的 Grid 物件顯示在需要的位置。

  5. 您可以在範本編輯模式中繼續修改範本。例如,新增或修改物件,或是選取 [狀態] 面板中的狀態,以修改範本在該狀態時的外觀。

  6. 請考慮將範本中物件的部分筆刷屬性繫結到最終使用該範本之 PasswordBox 物件的下列屬性:

    • Background

    • BorderBrush

    • Foreground

    • BorderThickness

    如需詳細資訊,請參閱完成範本的物件屬性

  7. 若要結束範本編輯模式,請按一下畫板頂端階層連結列中的 [PasswordBox],或按一下 [物件與時間軸] 面板中的 [將範圍傳回] Ee341382.55844eb3-ed98-4f20-aa66-a6f5b23eeb2b(ZH-TW,Expression.30).png

如需將新 PasswordBox 範本套用至其他 PasswordBox 物件的詳細資訊,請參閱套用或移除資源

參照

您可以在 MSDN 的 Silverlight Control Gallery (Silverlight 控制項陳列庫) 中找到有關 Microsoft Silverlight PasswordBox 控制項之屬性與事件的詳細資訊。

請參閱

概念

一般 Silverlight 控制項的樣式提示

設定支援範本之控制項的樣式

繪製文字