/// <summary> /// Questiona ao usuário se a localidade a ser cadastrada /// encontra-se na lista de localidades semelhantes. /// </summary> /// <param name="localidade">Localidade a ser cadastrada.</param> /// <param name="ignorarCadastro">Se o cadastro deve ser ignorado.</param> /// <param name="aux">Vetor de localidades semelhantes.</param> private void QuestionarSemelhantes(Localidade localidade, out bool ignorarCadastro, Localidade[] aux) { AguardeDB.Suspensão(true); MostrarMensagemLocalidadesSemelhantes(localidade); using (ListarLocalidades dlg = new ListarLocalidades(aux)) { if (dlg.ShowDialog(ParentForm) == DialogResult.OK) { CopiaCadastro(localidade, dlg); ignorarCadastro = true; } else ignorarCadastro = false; } AguardeDB.Suspensão(false); }
/// <summary> /// Ocorre quando usuário clica em procurar. /// </summary> protected override void AoClicarBtnProcurar(object sender, EventArgs e) { if (Text.Trim().Length > 3) { Localidade[] localidades; AguardeDB.Mostrar(); try { localidades = Localidade.ObterLocalidades(Text); } finally { AguardeDB.Fechar(); } using (ListarLocalidades dlg = new ListarLocalidades(localidades)) { if (dlg.ShowDialog(ParentForm) == DialogResult.OK) { Localidade = dlg.Seleção; DispararAoAlterar(); } else base.AoClicarBtnProcurar(sender, e); } } else base.AoClicarBtnProcurar(sender, e); }
public static Localidade Procurar(IWin32Window owner) { País país; Estado estado; Região região; Localidade[] localidades = null; repetir: using (ProcurarLocalidade dlg = new ProcurarLocalidade()) { if (dlg.ShowDialog(owner) != DialogResult.OK) return null; país = dlg.País; estado = dlg.Estado; região = dlg.Região; } AguardeDB.Mostrar(); try { if (país != null && estado != null && região != null) localidades = Localidade.ObterLocalidades(estado, região); else if (país != null && estado != null) localidades = Localidade.ObterLocalidades(estado); else if (país != null) localidades = Localidade.ObterLocalidades(país); else if (região != null) localidades = Localidade.ObterLocalidades(região); else localidades = Localidade.ObterLocalidades(); } finally { AguardeDB.Fechar(); } if (localidades.Length == 0) { if (MessageBox.Show(owner, "Nenhuma localidade foi encontrada com os parâmetros entrados.", "Procurar por localidade", MessageBoxButtons.RetryCancel, MessageBoxIcon.Information, MessageBoxDefaultButton.Button2) == DialogResult.Retry) { goto repetir; } } else { using (ListarLocalidades dlg = new ListarLocalidades(localidades)) { if (dlg.ShowDialog(owner) == DialogResult.OK) return dlg.Seleção; } } return null; }