C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 32 を表示中)
■15733 / )  画像のリソースを正しく開放するには?
□投稿者/ まぐねしうむ (19回)-(2008/03/19(Wed) 17:59:15)

分類:[C#] 

いつもお世話になっております。

例えばピクチャーボックスに画像を複数回張ったり消したりする処理で
下記の2パターンを試したところ「1」のケースは期待通りにすぐ開放されましたが
「2」のケースは期待した動きとは異なり、すぐにはリソースが開放されませんでした。
(開放されているかどうかはタスクマネージャのメモリ使用量で
 確認しています。)

お手数ですが「1」のケースの様にすぐにリソースを開放する方法が無いか
教えてください。

1.画像を外部から読み込む

 if (pictureBox1.Image != null)
 {
    pictureBox1.Image.Dispose();
    pictureBox1.Image = Image.FromFile(Application.StartupPath + "\\Test.bmp");
 }
 else
 {
    pictureBox1.Image = Image.FromFile(Application.StartupPath + "\\Test.bmp");
 }

2.内部のリソースファイルから読み込む

 if (pictureBox1.Image != null)
 {
    pictureBox1.Image.Dispose();
    pictureBox1.Image = Properties.Resources.TestJpg;
 }
 else
 {
    pictureBox1.Image = Properties.Resources.TestJpg;
 }

以上よろしくお願いします。

返信 編集キー/


管理者用

- Child Tree -