/* * Dispara a consulta ao banco em um Thread separado para não travar a tela do usuario enquanto busca as informações */ public void DataBase(string numero = null) { _valid = false; _ = Task.Run(() => { if (_candidatoDAO == null) { _candidatoDAO = new CandidatoDAO(new SerializadorJSON()); } if (numero != null && numero != "00") { object result = _candidatoDAO.Buscar(numero); if (result.GetType() == typeof(Candidato)) { this.BeginInvoke(new MethodInvoker(() => { Candidato r = (Candidato)result; lblN1.Text = r.Numero.Substring(0, 1); lblN2.Text = r.Numero.Substring(1, 1); lblNome.Text = r.Nome.ToUpper(); this.lblNome.Location = new Point( Convert.ToInt32((this.pnlFotoContainer.Width / 2) - (this.lblNome.Width / 2)), this.lblNome.Location.Y ); string pathImageDefault = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "userInit.png"); string fotoCandidato = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"DB\\Candidatos\\Fotos\\{r.Foto}"); if (File.Exists(fotoCandidato)) { ptbFoto.Load(fotoCandidato); } else { Reset(new object(), new EventArgs()); MessageBox.Show("Não foi possivel carregar os dados do candidato"); return; } _valid = true; })); } else { MessageBox.Show("Candidato não existe"); } } }); }