FarPoint.Win.Spread アセンブリ > FarPoint.Win.Spread.CellType 名前空間 > MaskCellType クラス : Mask プロパティ |
このプロパティを使用すると、入力を特定の文字種に制限することでユーザーの入力を助ける入力マスクを定義できます。マスクを作成するには、このプロパティにマスク文字の文字列を設定します。各マスク文字はユーザーが文字を入力できる位置を表します。異なるマスク文字を使用することで、特定の文字種の入力を許可できます。
マスクはマスク文字とリテラルを任意に組み合わせて構成できます。リテラルとは、ユーザーが上書き入力できない文字または記号です。リテラルを使用することで、ユーザーは一定の書式に従って決められた種類の値を入力できます。たとえば、次の文字列は、カッコとダッシュをリテラルに用いて、電話番号のマスクを定義します。
(###) ### - ####
シャープ記号(#)にはそれぞれ1桁の数字を入力できます。
マスクコントロールでは、次のマスク文字が使用できます。
文字 | 定義 |
---|---|
# | 数字のみを許可 |
A | 英字のみを許可 |
H | 16進値(0〜9、A〜F)のみを許可 |
L | 英字のみを許可し、入力を小文字に変換 |
M | 英数字を許可し、入力された英字を小文字に変換 |
N | 英数字を許可 |
U | 英字のみを許可し、入力を大文字に変換 |
W | 英数字を許可し、入力された英字を大文字に変換 |
X | 任意の文字を許可 |
X文字については、Microsoft .NET FrameworkのChar.IsControlメソッドを使用して、制御文字かどうかが判定されます。IsControlメソッドがFalseを返した場合、その文字は許可されます。Trueを返した場合、その文字は許可されません。
定義済みマスク文字は大文字と小文字が区別されます。Maskプロパティの設定は指定されたとおりに入力する必要があります(例:"a"ではなく"A")。マスク文字をリテラルとして使用するには、文字の前に円記号(\)を挿入します。たとえば、単語"Number"を数値の前に配置したい場合は、"\Number"とする必要があります。これはNが定義済みマスク文字であるためです。したがって、電話番号のマスクは次のようになります。
\Number:(###) ###-####
この場合、セルには次のように表示されます。
Number:(___) ___-____
これはデフォルトのMaskCharであるアンダースコア(_)を使用した場合の例です。
文字0〜9はカスタムマスクに使用できます。これらの文字をリテラルとして使用するには、文字の前に円記号(\)を挿入します。たとえば、電話番号の前にプラス記号、0、およびダッシュ記号を付けるには、次のようにします。
+\0-(###) ### - ####
表示されるマスク文字を設定するには、MaskCharプロパティを参照してください。
FarPoint.Win.Spread.CellType.MaskCellType maskcell = new FarPoint.Win.Spread.CellType.MaskCellType(); maskcell.Mask = "[ ULLLLLLL : ULLLLLLL ]"; maskcell.MaskChar = Convert.ToChar("X"); fpSpread1.ActiveSheet.Cells[0, 0].CellType = maskcell;
Dim maskcell As New FarPoint.Win.Spread.CellType.MaskCellType() maskcell.Mask = "[ ULLLLLLL : ULLLLLLL ]" maskcell.MaskChar = "X" FpSpread1.ActiveSheet.Cells(0, 0).CellType = maskcell