| MESCIUS InputMan for WPF 3.0J > InputMan for WPF の使い方 > テキストコントロール > 書式を設定する |
このトピックでは、テキストコントロールを特徴づける入力制限の機能について解説します。
テキストコントロールでは、入力可能な文字種を Format プロパティで制限することができます。Format プロパティに設定できるキーワードは、次の表のとおりです。また、ここで指定された以外の文字種が入力されると、InvalidInput イベントが発生します。
| 全角 | 半角 | 説明 |
|---|---|---|
| A | A | 大文字のアルファベット(A〜Z) |
| a | a | 小文字のアルファベット(a〜z) |
| K | K | カタカナ(促音・拗音の小書き表記あり) |
| N | N | カタカナ(促音・拗音の小書き表記なし) |
| 9 | 9 | 数字(0〜9) |
| # | # | 数字および数字関連記号(0〜9、+ - $ % \ , .) |
| @ | @ | 記号(! " # $ % & ' ( ) - = ^ ~ \ | @ ` [ { ; + : * ] } , < . > / ? _) |
| B | B | 2進数(0または1) |
| X | X | 16進数(0〜9、A〜F) |
| J | - | ひらがな(促音・拗音の小書き表記あり) |
| G | - | ひらがな(促音・拗音の小書き表記なし) |
| Z | - | すべての全角文字 |
| T | - | サロゲート ペア文字 |
| S | S | 空白文字 |
| - | H | すべての半角文字 |
| - | ^ | 指定した書式に含まれないすべての文字 |
| - | \ | エスケープシーケンス |
以下に、入力可能な文字種を設定する具体例を示します。
次のコードは、半角大文字のアルファベット(A〜Z)と2進数(0, 1)のみを許可します。
GcTextBox1.Format = "AB"GcTextBox1.Format = "AB";<im:GcTextBox Format="AB" />
次のコードは、半角大文字のアルファベットと数字(0〜9)のみを許可します。キーワード"X"で指定した 16 進数は別のキーワードの"A"と"9"に含まれているので、この部分は無視されます。
GcTextBox1.Format = "AX9"GcTextBox1.Format = "AX9";<im:GcTextBox Format="AX9" />
次のコードは、すべての半角文字のみを許可します。キーワード"AaK9"で指定した文字種は"H"に包含されているので、この部分は無視されます。
GcTextBox1.Format = "AaK9H"GcTextBox1.Format = "AaK9H";<im:GcTextBox Format="AaK9H" />
次のコードは、すべての文字を許可します。
GcTextBox1.Format = "ZH"GcTextBox1.Format = "ZH";<im:GcTextBox Format="ZH" />
次のコードは、空白文字を除くすべての文字が許可されます。この例が示すように、キーワード"^"は、その後に記述されたキーワードの補集合を表します。
GcTextBox1.Format = "^SS"GcTextBox1.Format = "^SS";<im:GcTextBox Format="^SS" />
次のコードは、16 進数のうちアルファベットで表される数字(A〜F)のみを許可します。この例が示すように、入力可能な文字種から特定の文字種を除外することもできます。
GcTextBox1.Format = "XX^99"GcTextBox1.Format = "XX^99";<im:GcTextBox Format="XX^99" />
AutoConvert プロパティを True に設定すると、Format プロパティの設定内容に基づいて、変換可能な文字はすべて自動的に変換されます。たとえば、Format プロパティで"A"キーワードが設定されていると、小文字を入力しても自動的に大文字に変換されます。また、全角文字だけが許可されている場合は、入力された半角文字は全角文字に変換されます。
コントロール内部で行われる自動変換の手順を以下に示します。
半角カタカナ、全角カタカナ、およびひらがなは、次のように変換されます。