1

ListBox と ComboBox の両方に表示する項目を提供する DataTemplate があります。私が作成したウィンドウは次のようになります: スクリーンショット http://img223.imageshack.us/img223/8117/datatemplateexampletz4.png

私が持っている質問は、ComboBox の DataTemplate が ListBox の表示よりもぼやけているか、わずかにピクセル化されている理由です。スクリーンショットではかなりわかりにくいですが、実際にアプリを使ってみるとより目立ちます。なぜこれが起こっているのですか?ClearType が 1 つのコントロールで有効になっており、他のコントロールでは有効になっていないことと関係がありますか?

どんなアイデアでも大歓迎です。必要に応じてコードを投稿できます。

4

3 に答える 3

1

ListBox と比較したときの ComboBox のテキストのぼやけは、ポップアップ (ComboBox のポップアップを含む) で ClearType が無効になっているためです。これはMicrosoft によって確認されています。

リンクされた記事から:

別の Win32 ウィンドウであるポップアップでは、背後にあるピクセルを (さまざまな怪しくて遅い win32 トリックを行わずに) WPF ClearType システムが知る方法がないため、単純に無効にされます。

于 2009-02-03T19:42:50.660 に答える
1

この効果は、アイコンの「Adobe」の文字で特に顕著に見えるようです。アイコンはある種のグラフィックであると想定しているため、これはClearType とは関係ありません。ClearType はとにかく WPF でわずかにしか役に立ちませんが、より一般的な問題です。よく疑われるのは、ピクセル スナッピングです。

于 2009-02-03T11:05:10.610 に答える
1

これは、画像がピクセル グリッドに整列していないためです。整列されたサイズと位置をすべて明示的に指定するか、別の画像コントロールを使用することができます。私のブログの次の投稿を参照してください。

http://www.nbdtech.com/blog/archive/2008/11/20/blurred-images-in-wpf.aspx

于 2009-02-03T14:15:42.833 に答える