protected void preencheLista(ListaConcursos lista) { if (this.lbConcursos.InvokeRequired) { preencheListaCallback d = new preencheListaCallback(preencheLista); this.Invoke(d, new object[] { lista }); } else { lbConcursos.Items.Clear(); int added = 0; foreach (Concurso concur in lista.Concursos) { ListViewItem lvi = new ListViewItem(concur.Lugar); if (concur.Data.Equals(DateTime.Now.ToShortDateString())) lvi.ForeColor = Color.Blue; if (!concur.Lido && string.IsNullOrEmpty(concur.ConteudoHTML)) { lvi.Font = new Font(lbConcursos.Font, FontStyle.Bold); added++; } lbConcursos.Items.Insert(0, lvi); } if (added > 0) { if (Form1.ActiveForm != null) ((Form1)Form1.ActiveForm).Notificar("Você tem " + added + " novos concursos adicionados.\nClique aqui para abrir!", "Novos concursos!"); if (ConcursoAdicionado != null) ConcursoAdicionado(this, new EventArgs()); } } }
protected void carregaListaConcursos() { if (File.Exists(Config.PastaXML + "\\" + cargo.Nome + ".xml")) { FileStream fs = null; try { Cursor.Current = Cursors.WaitCursor; XmlSerializer serializer = new XmlSerializer(typeof(ListaConcursos)); fs = new FileStream(Config.PastaXML + "\\" + cargo.Nome + ".xml", FileMode.Open); lista = (ListaConcursos)serializer.Deserialize(fs); fs.Close(); preencheLista(lista); } catch (Exception ex) { } finally { if (fs != null) fs.Dispose(); } } }