コード例 #1
0
        private void Buscar()
        {
            if (String.IsNullOrWhiteSpace(txtID.Text))
            {
                itens.Clear();
                //dtaServicos.Items.Clear();// limpe apenas a lista, não precisa limpar o datagrid, nem pode, da erro
                foreach (Servico servico in ServicoDAO.Listar)
                {
                    itens.Add(new
                    {
                        //id para poder buscar
                        Id            = servico.Id.ToString(),
                        Nome          = servico.Nome,
                        Descricao     = servico.Descricao,
                        Duracao       = servico.Duracao,
                        TipoDeServico = servico.TipoServico.Nome,
                        Preco         = servico.Preco.ToString("C2", CultureInfo.GetCultureInfoByIetfLanguageTag("pt-BR"))
                    });
                }
                dtaServicos.ItemsSource = itens;
                dtaServicos.Items.Refresh();
                //não gosto de ficar colocando um monte de else, se for vários vai encadeando e jogando tudo pro lado...
                return;
            }

            s = ServicoDAO.BuscarPorID(Convert.ToInt32(txtID.Text));

            if (s == null)
            {
                MessageBox.Show($"Servico de ID {txtID.Text} não encontrado.", "Pet Shop", MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }

            txtNome.Text             = s.Nome;
            txtDescricao.Text        = s.Descricao;
            cboDuracao.SelectedIndex = cboDuracao.Items.IndexOf(s.Duracao + " Minutos");
            cboTipo.SelectedIndex    = cboTipo.Items.IndexOf(s.TipoServico);
            txtPreco.Text            = s.Preco.ToString();

            btnAlterar.IsEnabled   = btnRemover.IsEnabled = true;
            btnCadastrar.IsEnabled = btnBuscar.IsEnabled = txtID.IsEnabled = false;
        }