public void ListarParaVender(DataGridView dgv)
        {
            try
            {
                dgv.DataSource = (from cli in _banco.Cliente select new { ID = cli.ID, Nome = cli.Nome, CPF = cli.CPF, Celular = cli.Celular }).ToList();
                dgv.AjustartamanhoDoDataGridView(new List<TamanhoGrid>()
                {
                   
                     new TamanhoGrid(){ ColunaNome = "Nome", Tamanho = 228},
                     new TamanhoGrid(){ ColunaNome = "CPF", Tamanho = 150},
                     new TamanhoGrid(){ ColunaNome = "Celular", Tamanho = 150}
                });
                dgv.EsconderColuna("ID");
            }
            catch (CustomException erro)
            {
                throw new CustomException(erro.Message);
            }
            catch (Exception erro)
            {
                throw new Exception(erro.Message);
            }

        }
        public void Listar(DataGridView dgv)
        {
            try
            {
                InstanciarDbContext();
                dgv.DataSource = (from prod in _banco.Produto
                                  join cat in _banco.Categoria on prod.Categoria equals cat.ID
                                  select new
                                  {
                                      ID = prod.ID,
                                      Código = prod.Codigo,
                                      Nome = prod.Nome,
                                      Categoria = cat.Nome,
                                      Preço = prod.PrecoVenda,
                                      Estoque = prod.GerenciarEstoque
                                  }).OrderBy(c => c.Nome).ToList();
                dgv.EsconderColuna("ID");

            }
            catch (CustomException erro)
            {
                throw new CustomException(erro.Message);
            }
            catch (Exception erro)
            {
                throw new Exception(erro.Message);
            }

        }
        public void SelectProdutoPeloCategoriaEstoque(DataGridView dgv, string categoria)
        {
            try
            {
                InstanciarBanco();
                InstanciarTipoCadastroRepositorio();
                int IDTipoCadastro = _tipoCadastroRepositorio.GetIDPeloNome("Unidade");
                dgv.DataSource = (from prod in _banco.Produto
                                  join cat in _banco.Categoria on prod.Categoria equals cat.ID
                                  where prod.TipoCadastro == IDTipoCadastro && cat.Nome.Contains(categoria)
                                  select new
                                  {
                                      ID = prod.ID,
                                      Código = prod.Codigo,
                                      Nome = prod.Nome,
                                      Categoria = cat.Nome,
                                      Preço = prod.PrecoVenda,
                                      Estoque = prod.GerenciarEstoque
                                  }).OrderBy(c => c.Nome).ToList();
                dgv.EsconderColuna("ID");


            }
             
            catch (CustomException erro)
            { 
                throw new CustomException(erro.Message);
            }
            catch (Exception erro)
            {
                throw new Exception(erro.Message);
            }
        }