MESCIUS InputMan for ASP.NET 10.0J
未入力時の表示

コンボコントロールでは未入力のときや入力が完了していないとき、様々な補助機能を提供しています。この章ではそれらの機能について解説します。

未入力時に表示する代替テキスト
Watermarkプロパティを使用すれば、コントロールが未入力のときにや、項目を選択していないときに代わりに表示するテキスト(ウォーターマーク)を設定することができます。 Watermarkプロパティは、WatermarkBaseオブジェクトを参照します。
コントロールにフォーカスがあるときのテキストを設定するには、WatermarkBase.Nullプロパティを使用します。コントロールにフォーカスがないときのテキストを設定するには、WatermarkBase.DisplayNullプロパティを使用します。

これらのプロパティはWatermarkクラスを参照し、次の2つのプロパティを設定することができます。
代替テキストの表示は、DropDownStyleプロパティがDropDownStyle.DropDownListに設定され、テキストボックスの編集が不可の場合も動作します。


(図)代替テキストを表示したコンボコントロール


次のサンプルコードは、上図のような代替テキストを表示する方法です。

' フォーカスがないときの代替テキスト

GcComboBox1.Watermark.DisplayNull.Text = "製品番号を入力してください"
GcComboBox1.Watermark.DisplayNull.ForeColor = System.Drawing.Color.Goldenrod

' フォーカスがあるときの代替テキスト
GcComboBox1.Watermark.Null.Text = "半角で入力してください"
GcComboBox1.Watermark.Null.ForeColor = System.Drawing.Color.Green
// フォーカスがないときの代替テキスト
GcComboBox1.Watermark.DisplayNull.Text = "製品番号を入力してください";
GcComboBox1.Watermark.DisplayNull.ForeColor = System.Drawing.Color.Goldenrod;

// フォーカスがあるときの代替テキスト
GcComboBox1.Watermark.Null.Text = "半角で入力してください";
GcComboBox1.Watermark.Null.ForeColor = System.Drawing.Color.Green;
プロンプト文字

フィールドに何も入力されていないときに表示するプロンプト文字は、PromptCharプロパティを使用して設定します。 プロンプト文字はMaskFormat.Patternプロパティに定義された入力マスクの位置にプレースホルダとして表示され、ユーザに入力を促します。 なお、PromptCharプロパティには、半角または全角の文字を設定できますが、文字列は設定できません。


(図)プロンプト文字("_")

代替テキストを設定している場合、コントロールに文字が入力されていないときには代替テキストの設定が優先されます。 未入力時に、MaskFormat.Patternプロパティで設定したリテラル文字列を含む書式とプロンプト文字を表示するには、次のサンプルコードのように、代替テキストを空の文字列に設定します。

GcComboBox1.Watermark.DisplayNull.Text = string.Empty
GcComboBox1.Watermark.Null.Text = string.Empty
GcComboBox1.Format.Pattern = "商品ID \A{1}-\D{5}"
GcComboBox1.PromptChar = '_'
GcComboBox1.Watermark.DisplayNull.Text = string.Empty;
GcComboBox1.Watermark.Null.Text = string.Empty;
GcComboBox1.Format.Pattern = "商品ID \\A{1}-\\D{5}";
GcComboBox1.PromptChar = '_';
関連トピック

 

 


© MESCIUS inc. All rights reserved.