Last Updated 2013/04/26
WPF 対応のフォント選択ダイアログボックスを作りましたので、紹介します。
従来の .Net Framework で提供するコモンダイアログボックスのうち、WPF 対応のものは OpenFileDialog、SaveFileDialog、PrintDialog クラスだけです。.Net Framework 4.0 でもそのほかのコモンダイアログボックスは含まれていません。しかし、コモンダイアログボックスはその名前が示すとおり、多くのアプリケーション開発者が利用するものですから提供しない理由は何なんでしょうね。ともあれ、なければ作るほかありません。
ColorDialog クラスは、カラー値だけを扱いますから System.Windows.Forms.ColorDialog クラスを使う手はあります。しかし、System.Windows.Forms.FontDialog クラスは WPF におけるフォントの扱い方が従来とは大きく異なりますので、事実上使えません。そこで、フォント選択ダイアログボックスを作ってみました。
さて、WEB サイト上ではいくつかのフォント選択ダイアログボックスが提案されていますが、現実的に使いたいと思うものはありませんでした。下図は、私が提案する FontDialogEx コントロールを起動したところです。従来の FontDialog クラスとできるだけ同じイメージにしました。
このクラスの特徴は WPF に対応しているほかに、[言語] を選択できる点にあります。日本語、米国英語、韓国語、中国語、すべての言語に対応します。
フランス語とドイツ語も追加しようとしましたが、私の環境の中にそれに対応するフォントがありませんので、やめました。
[サンプル] は入力可能な TextBox コントロールですので、実情に合わせてテキストを編集することができます。また、テキストはダイアログボックスを開くときにプロパティとして設定することができます。
[タイプフェース] は従来の [スタイル] とほぼ同じ意味ですが、完全に同じではありません。FontStyle、FontWeight、FontStretch の三種類をあらわします。上図の例は "Meiryo" ですが、"Arial" を指定するとたくさんリストアップされます。試してください。
以下は、Visual Studio 2010 のテスト用プロジェクトを含みます。完全にフリーウエアです。
FontDialogEx.zip (15,823 bytes)
ソースコードの解説は省略しますが、プロパティやメソッドなどの使い方は公開中の WPF クラスライブラリリファレンスが参考になると思います。一度、のぞいてみてください。なお、ソースコードは改変・流用は自由ですので、自分好みに変更して使ってください。
−以上−