添付ビヘイビアを使い TextBox で数値以外を入力できなくする。
TextBox を使う場合、数値以外は入力させたくないというケースって結構あると思います。Window のイベントハンドラで対処してもいいし、TextBox を継承してもいいとは思うのですが、より汎用的に使いまわすには「添付ビヘイビア」がお勧めです。添付ビヘイビアさえ用意しておけば、後は XAML で定義するだけなので、使う側から見てもとっても扱いやすくなります。
「添付ビヘイビア」に関してはかずきさんの以下の記事を参考にさせて頂きました。
かずきさんのブログは、他にもコアな情報がたいへん多いのでお勧めです。(引っ越し前後で記事が別れているようですが・・・)
まず「添付ビヘイビア」のコード
XAML はこんな感じになります。
#2010/12/07 追記
上のコードは、クリップボード経由で数値以外のデータが貼り付けられてしまいます。
回避策ですが、トラックバックの id:Yoichiro さんの記事 数値しか入力できないTextBoxコントロール に詳しい対処法が書かれているので参考にしてください。