Web上にある画像をダウンロードしてきてBitmapイメージを保持する管理クラスです。適当にタイトルとか持っておきます。
/// <summary> /// 画像管理クラス /// </summary> public class PictureInfo { public string PictureUrl = ""; public Bitmap Image = null; public string Title = null; public PictureInfo(string title, string url) { PictureUrl = url; Title = title; } }
ダウンロードが完了したら、メインスレッドにBitmapを渡す為のイベントハンドラ引数とイベントハンドラを定義します。
/// <summary> /// 画像ダウンロード完了イベントハンドラ /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public delegate void EventHandler(object sender, DownloadComplateEventArgs e); /// <summary> /// 画像ダウンロード完了イベントハンドラ引数クラス /// </summary> public class DownloadComplateEventArgs : EventArgs { public PictureInfo Info { set; get; } public DownloadComplateEventArgs(PictureInfo info) { Info = info; } }
UI側ではこのイベントが飛んできたら関連するrowの画像を更新します。