0

Buttonまたは で表示するとListView、32 ビットの 32 ビット イメージがImageList正しく表示されません。写真の端に黒い半透明のピクセルがいくつかあります (これには PNG のようなアルファ チャネルがあります)。

また、画像が破損し、線が重なって品質が低下します (リサンプリングせずに画像のサイズを変更した場合など)。

挿入された画像は 32 ビット品質で、画像と同じサイズImageListです。

Buttonを使用して同じ画像を配置しようとしましResources filesたが、それは機能ListViewしますが、 を使用する必要がImageListあり、うまく機能しません。

32 ビットに関連するメモリ リークや既知の問題はありますImageListか?

4

2 に答える 2

0

この問題は、(32ビット16x16)ICOファイルをインポートする場合にのみ発生します。32ビットの16x16PNGファイルをインポートする場合、問題はありません。

今、あなたは知っています!

于 2011-09-03T14:01:07.577 に答える
0

私は Velcro によるコメントに賛成です..32 ビットの System.Drawing dll に問題があるようです。

私も同じ問題 (32 ビット システムでひどいサムネイル品質) を抱えていましたListview。このSO answerで提供されているコードをドロップしました: resizing-an-image-in-asp-net-without-losing-the-image-qualityで、うまくいきました!

これは System.Drawing の問題によるものだと考えています。最初はリストビューにスケーリングを任せていたからです。問題を解決するための 2 回目の試みは、オープン ソースのImageListViewコントロールを使用することでした。これにもまったく同じ問題があり、まだ System.Drawing を使用してサムを生成しています。

次に、一般的な方法で (まだ System.Drawing を使用して) サムを手動で生成しようとしましたが、それでも壊れていました。最後に、サイズ変更のオプション(上記のソリューション)を試してみることにしましたが、それで解決しました。

于 2012-02-24T00:20:53.690 に答える