2012-02-25 11 views
0

私はクレジットカード番号を取り、プレーンテキストで数値を表示するWindowsフォーム上のテキストボックスを持っています。最初の12文字は "x"を表示し、最後の4桁のみを情報を入力する際に​​プレーンテキストで表示する必要があります。また、値をマスクすると、テキストボックスのtextプロパティから実際の情報を取得しますか?テキストボックス内の情報を入力する際に​​、その文字をマスクする方法はありますか?

ありがとうございました!

答えて

2

テキストボックスを2つの部分に分割します.1つはMaskedTextBoxでマスクし、もう1つは最後の4桁にします。この場合、あなたの機能を無料で手に入れることができます。 Maskプロパティを「0000-0000-0000」、passwordCharを「X」に設定します。

ユーザーが最初の12桁を入力すると、自動的に残りの桁を設定するために2番目のテキストボックスにフォーカスを設定できます。

+0

私はあなたがUIデザイナーではないと想定していますが、それはユーザビリティの観点からはひどい解決策です。 – adelphus

+0

どのように?クレジットカード情報を入力するほとんどのフォームは、別々のテキストボックスを使用します。 – BrokenGlass

+0

2つのボックス間で1つの要素(カード番号)が不均等に流出する理由を理解できません。あなたは開発者が簡単に問題を解決していますが、UIは常にユーザーの視点に焦点を当てるべきです。 – adelphus

2

テキストボックスのOnTextChangedイベントでは、入力されたcharの数のタブを維持し、その数が< = 12である限り、入力されたcharを "x"で置き換える必要があります。

+0

入力した文字を置き換える前に保存してください。それ以外の場合、.Textプロパティはxの値を返します。 – adelphus

関連する問題