プレースホルダは、データ入力時に、入力マスクに指定された文字と同じタイプの文字を使用して置き換えることができます。ユーザーが無効な文字を入力した場合、コントロールはその文字を受け入れません。コントロールは数字やアルファベットなどの文字の種類は検証できますが、正確な月や日時というような内容の有効性は検証できません。
入力マスクの構成文字には次のようなものがあります。
Character |
説明 |
: | 時刻の区切り文字。実際に使用される文字は、システムの国際設定によって時刻の区切り文字に指定されたものです。この文字はマスキング用のリテラルとして扱われます。 |
/ | 日付の区切り文字。実際に使用される文字は、システムの国際設定によって日付の区切り文字に指定されたものです。この文字はマスク用のリテラルとして扱われます。 |
mm, dd, yy | これら 3 つの特殊トークンを組み合わせて日付マスクを定義できます。mm は月、dd は日、yy は 2 桁形式の年、yyyy は 4 桁形式の年を表します。例: mm/dd/yyyy、yyyy/mm/dd、mm/yy。 |
hh, mm, ss, tt | これら 3 つの特殊トークンを組み合わせて時刻マスクを定義できます。hh は時、mm は分、ss は秒、tt は AM/PM を表します。例: hh:mm、hh:mm tt、hh:mm:ss。 |
{date} | {date} トークンは、短い日付形式を入力するためのプレースホルダです。日付マスクは、基になるカルチャ設定を使用して生成されます。 |
{time} | {time}トークンは、短い時刻形式を入力するためのプレースホルダです。短い時刻形式には通常、秒部分は含まれません。時刻マスクは、基になるカルチャ設定を使用して生成されます。 |
{longtime} | {longtime} トークンは、長い時刻形式を入力するためのプレースホルダです。長い時刻形式には通常、秒部分が含まれます。長い時刻マスクは、基になるカルチャ設定を使用して生成されます。 |
リテラル | 上記以外の記号はすべてリテラルとして(つまり、その記号自体として)表示されます。 |
注: マスキングは、UltraDateTimeEditor コントロールでは常に有効です。MaskInputプロパティを特に設定しない限り、デフォルトのマスクが使用されます。
Imports Infragistics.Win Imports Infragistics.Win.UltraWinEditors Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Me.SetupMasking() End Sub Private Sub SetupMasking() ' Set the UltraDateTimeEditor to display the 2-digit representation of the year Me.UltraDateTimeEditor1.MaskInput = "mm/dd/yy" ' Set the UltraNumericEditor to display a thousands separator Me.UltraNumericEditor1.MaskInput = "n,nnn,nnn" ' Set the UltraCurrencyEditor to display a thousands separator, ' and no currency symbol Me.UltraCurrencyEditor1.MaskInput = "n,nnn.nn" ' Set the masking modes of the UltraDateTimeEditor to include literals, ' because the "/" character is part of the data in that it separates the ' components of the date (year, month, day) Me.UltraDateTimeEditor1.MaskDataMode = MaskMode.IncludeLiterals Me.UltraDateTimeEditor1.MaskClipMode = MaskMode.IncludeLiterals Me.UltraDateTimeEditor1.MaskDisplayMode = MaskMode.IncludeLiterals ' For the UltraNumericEditor and UltraCurrencyEditor, we don't ' want the thousands separator to be considered part of the data, ' so set the MaskDataMode to Raw. For the clipboard and display, ' however, we will display the literals. Me.UltraNumericEditor1.MaskDataMode = MaskMode.Raw Me.UltraNumericEditor1.MaskClipMode = MaskMode.IncludeLiterals Me.UltraNumericEditor1.MaskDisplayMode = MaskMode.IncludeLiterals Me.UltraCurrencyEditor1.MaskDataMode = MaskMode.Raw Me.UltraCurrencyEditor1.MaskClipMode = MaskMode.IncludeLiterals Me.UltraCurrencyEditor1.MaskDisplayMode = MaskMode.IncludeLiterals ' Set the PromptChar to the space character for all Me.UltraDateTimeEditor1.PromptChar = Chr(32) Me.UltraNumericEditor1.PromptChar = Chr(32) Me.UltraCurrencyEditor1.PromptChar = Chr(32) End Sub
using System.Diagnostics; using Infragistics.Win; using Infragistics.Win.UltraWinEditors; private void button1_Click(object sender, System.EventArgs e) { this.SetupMasking(); } private void SetupMasking() { // Set the UltraDateTimeEditor to display the 2-digit representation of the year this.ultraDateTimeEditor1.MaskInput = "mm/dd/yy"; // Set the UltraNumericEditor to display a thousands separator this.ultraNumericEditor1.MaskInput = "n,nnn,nnn"; // Set the UltraCurrencyEditor to display a thousands separator, // and no currency symbol this.ultraCurrencyEditor1.MaskInput = "n,nnn.nn"; // Set the masking modes of the UltraDateTimeEditor to include literals, // because the "/" character is part of the data in that it separates the // components of the date (year, month, day) this.ultraDateTimeEditor1.MaskDataMode = MaskMode.IncludeLiterals; this.ultraDateTimeEditor1.MaskClipMode = MaskMode.IncludeLiterals; this.ultraDateTimeEditor1.MaskDisplayMode = MaskMode.IncludeLiterals; // For the UltraNumericEditor and UltraCurrencyEditor, we don't // want the thousands separator to be considered part of the data, // so set the MaskDataMode to Raw. For the clipboard and display, // however, we will display the literals. this.ultraNumericEditor1.MaskDataMode = MaskMode.Raw; this.ultraNumericEditor1.MaskClipMode = MaskMode.IncludeLiterals; this.ultraNumericEditor1.MaskDisplayMode = MaskMode.IncludeLiterals; this.ultraCurrencyEditor1.MaskDataMode = MaskMode.Raw; this.ultraCurrencyEditor1.MaskClipMode = MaskMode.IncludeLiterals; this.ultraCurrencyEditor1.MaskDisplayMode = MaskMode.IncludeLiterals; // Set the PromptChar to the space character for all this.ultraDateTimeEditor1.PromptChar = ' '; this.ultraNumericEditor1.PromptChar = ' '; this.ultraCurrencyEditor1.PromptChar = ' '; }