private void bgwDownload_DoWork_SetState(string url, stPreview.DownloadState NewState) { if (this.InvokeRequired) { this.Invoke(new bgwDownload_DoWork_SetState_d(bgwDownload_DoWork_SetState), url, NewState); } else { try { stPreview st; for (int i = 0; i < this.ilvPreview.Items.Count; i++) { st = (stPreview)this.ilvPreview.Items[i].Tag; if (st.URL == url) { st.State = NewState; this.ilvPreview.Items[i].Tag = st; this.ilvPreview.Items[i].Update(); break; } } } catch { } } }
private void AddPreview2(string postURL, string path) { if (this.InvokeRequired) { this.AddPreview_ARE.WaitOne(); this.Invoke(new AddPreview2_d(AddPreview2), postURL, path); this.AddPreview_ARE.Set(); } else { while (bPause) Thread.Sleep(500); if (bExit) return; ImageListViewItem item = new ImageListViewItem(); item.FileName = path; stPreview st = new stPreview(postURL); int r = (new Random(DateTime.Now.Millisecond)).Next(0, 4); st.State = stPreview.DownloadState.None; item.Tag = st; this.ilvPreview.Items.Add(item); this.grbPreview.Text = "이미지 미리보기 : " + this.ilvPreview.Items.Count; } }