WPF教程(二十)密碼框
阿新 • • 發佈:2019-02-16
WPF中編輯常規的文字都是使用文字框,但是如果是輸入密碼呢?功能應該是一樣的,但是我們不想周邊的人看著我們一個字母一個字母的輸入,這樣密碼就被洩漏了,因此我們想用別的字元來替代真實密碼的顯示。出於這個目的,WPF有一個密碼框控制元件,用起來和文字框一樣。
<span style="font-size:14px;"><Window x:Class="WpfTutorialSamples.Basic_controls.PasswordBoxSample" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="PasswordBoxSample" Height="160" Width="300"> <StackPanel Margin="10"> <Label>Text:</Label> <TextBox /> <Label>Password:</Label> <PasswordBox /> </StackPanel> </Window></span>
在上面的截圖中,我在兩個框裡輸入了完全一樣的字串,然而在密碼框裡面,字串顯示為幾個點。你還能控制使用什麼樣的字元來替代真實字元,用PasswordChar屬性就好:
<span style="font-size:14px;"><PasswordBox PasswordChar="X" /></span>
這樣的話X就會替代那些點,你還可以控制顯示字元的長度:<span style="font-size:14px;"><PasswordBox MaxLength="6" /></span>
下面的例子我把兩個屬性都用上了:<span style="font-size:14px;"><Window x:Class="WpfTutorialSamples.Basic_controls.PasswordBoxSample" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="PasswordBoxSample" Height="160" Width="300"> <StackPanel Margin="10"> <Label>Text:</Label> <TextBox /> <Label>Password:</Label> <PasswordBox MaxLength="6" PasswordChar="X" /> </StackPanel> </Window></span>
注意現在密碼顯示為6個X。
密碼框的繫結
當你需要獲取密碼框的密碼時,在後臺程式碼使用Password屬性。然而,出於安全考慮,Password屬性並不是一個依賴屬性,也就意外著無法繫結。