Xaml-passwordbox
XAML-PasswordBox
PasswordBoxは、ユーザーがマスクされたパスワードを入力できるコントロールです。 ユーザーがパスワードを入力すると、テキストは表示されず、パスワード文字のみが表示されます。 パスワード文字(通常は*と表示)は、 PasswordChar プロパティによって簡単に変更できます。 PasswordBoxクラスの階層的な継承は次のとおりです-
プロパティ
以下は、PasswordBoxクラスの一般的に使用されるプロパティです。
Sr.No. | Property & Description |
---|---|
1 |
InputScope このPasswordBoxが使用する入力のコンテキストを取得または設定します。 |
2 |
InputScopeProperty InputScope依存プロパティを識別します。 |
3 |
IsPasswordRevealButtonEnabled PasswordBoxのビジュアルUIに、入力した文字の表示と非表示を切り替えるボタン要素が含まれるかどうかを指定する値を取得または設定します。 Windows 10以降では、代わりにPasswordRevealModeを使用します。 |
4 |
IsPasswordRevealButtonEnabledProperty IsPasswordRevealButtonEnabled依存プロパティを識別します。 |
5 |
MaxLength このPasswordBoxで処理されるパスワードの最大長を取得または設定します。 |
6 |
MaxLengthProperty MaxLength依存プロパティを識別します。 |
7 |
Password PasswordBoxが現在保持しているパスワードを取得または設定します。 |
8 |
PasswordChar PasswordBoxのマスキング文字を取得または設定します。 |
9 |
PasswordCharProperty PasswordChar依存プロパティを識別します。 |
10 |
PasswordProperty パスワード依存プロパティを識別します。 |
11 |
PasswordRevealMode パスワードを常に使用するか、使用しないか、オプションで不明瞭にするかを指定する値を取得または設定します。 |
12 |
PasswordRevealModeProperty PasswordRevealMode依存プロパティを識別します。 |
13 |
Resources ローカルに定義されたリソースディクショナリを取得します。 XAMLでは、XAMLの暗黙的なコレクション構文を使用して、frameworkElement.Resourcesプロパティ要素の子オブジェクト要素としてリソース項目を確立できます。 (FrameworkElementから継承されます) |
イベント
以下は、PasswordBoxクラスの一般的に使用されるイベントです。
Sr.No. | Event & Description |
---|---|
1 |
ContextMenuOpening システムがコンテキストメニューを表示するインタラクションを処理するときに発生します。 |
2 |
GotFocus UIElementがフォーカスを受け取ったときに発生します。 (UIElementから継承) |
3 |
PasswordChanged Passwordプロパティの値が変更されたときに発生します。 |
4 |
Paste テキストがコントロールに貼り付けられたときに発生します。 |
方法
以下は、PasswordBoxクラスの一般的に使用されるメソッドです。
Sr.No. | Method & Description |
---|---|
1 |
OnLostFocus LostFocusイベントが発生する前に呼び出されます。 (Controlから継承) |
2 |
SelectAll PasswordBoxのすべての文字を選択します。 |
3 |
SetBinding 提供されたバインディングオブジェクトを使用して、FrameworkElementにバインディングをアタッチします。 (FrameworkElementから継承されます) |
4 |
SetValue DependencyObjectの依存関係プロパティのローカル値を設定します。 (DependencyObjectから継承) |
例
次の例は、PasswordBox、ラベル、およびボタンを示しています。 これらすべてのコントロールを作成および初期化するXAMLコードを次に示します。
<Window x:Class = "PasswordBox.MainWindow"
xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
Title = "MainWindow" Height = "350" Width = "604">
<Grid>
<PasswordBox x:Name = "pwBox"
Height = "35"
Width = "200"
MaxLength = "8"
Margin = "159,55,158,229"/>
<Label Content = "Password"
HorizontalAlignment = "Left"
Margin = "108,61,0,0"
VerticalAlignment = "Top"
Width = "70"/>
<Button Content = "Ok" HorizontalAlignment = "Left"
Margin = "406,64,0,0"
VerticalAlignment = "Top"
Width = "75" Click = "Button_Click"/>
<Label Name = "statusText"
HorizontalAlignment = "Left"
Margin = "159,128,0,0"
VerticalAlignment = "Top"
Width = "200"
Height = "38"/>
</Grid>
</Window>
以下は、プログラムがパスワードを比較するC#のボタンクリックイベントの実装です。 入力したパスワードが「xaml1234」の場合、ラベルに「正しいパスワード」というメッセージが表示されます。
using System.Linq;
using System.Windows;
using System.Windows.Controls;
namespace XAMLMenu {
public partial class MainWindow : Window {
public MainWindow() {
InitializeComponent();
}
private void MenuItem_Click(object sender, RoutedEventArgs e) {
MenuItem item = sender as MenuItem;
this.Title = "File: " + item.Header;
}
private void MenuItem_Click1(object sender, RoutedEventArgs e) {
MenuItem item = sender as MenuItem;
this.Title = "Edit: " + item.Header;
}
}
}
上記のコードをコンパイルして実行すると、次の出力が生成されます-
上記のサンプルコードを実行し、他のいくつかのプロパティとイベントを試すことをお勧めします。