コード例 #1
0
        //Função de apertar tecla no grid
        private void gridSapato_PreviewKeyDown(object sender, KeyEventArgs e)
        {
            //Verifica se foi apertado delete
            if (e.Key == Key.Delete)
            {
                //Menssagem de confirmação
                if (MessageBox.Show("Deseja apagar o sapato " + SapatoSelecionado.Nome + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    //Habilita deletar da grid
                    gridSapato.CanUserDeleteRows = true;

                    //Variavel de contexto
                    ModelSapatos ctx = new ModelSapatos();

                    //Busca o sapato no contexto pelo ID
                    Sapato ToDelete = ctx.sapatos.Find(SapatoSelecionado.ID);

                    //Marca como deleted
                    ctx.Entry(ToDelete).State =
                        System.Data.Entity.EntityState.Deleted;

                    //Salva as alterações
                    ctx.SaveChanges();
                }
                else
                {
                    //Desabilita o usuário deletar linhas
                    gridSapato.CanUserDeleteRows = false;
                }
            }
        }
コード例 #2
0
        //Ação de apertar tecla no grid
        private void dataGridVenda_PreviewKeyDown(object sender, KeyEventArgs e)
        {
            //Verifica se foi apertado o delete
            if (e.Key == Key.Delete)
            {
                //Menssagem de confirmação
                if (MessageBox.Show("Deseja apagar a venda de " + VendaSelecionada.Quantidade + " itens do tipo " + VendaSelecionada.Modelo + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    //Habilita deletar as linhas
                    dataGridVenda.CanUserDeleteRows = true;

                    //Variavel de contexto
                    ModelSapatos ctx = new ModelSapatos();

                    //Busca o dado no contexto pelo ID
                    Venda ToDelete = ctx.vendas.Find(VendaSelecionada.ID);

                    //Marca como deletado
                    ctx.Entry(ToDelete).State =
                        System.Data.Entity.EntityState.Deleted;

                    //Salva alterações
                    ctx.SaveChanges();
                }
                else
                {
                    //Impede de deletar os dados do grid
                    dataGridVenda.CanUserDeleteRows = false;
                }
            }
        }
コード例 #3
0
        //Ação de clicar no botão salvar
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Verifica se todos os campos estão preenchidos
            if (TamanhoTemp == null || TamanhoTemp.Tamanho == null)
            {
                MessageBox.Show("Preencha todos os campos", "Aviso", MessageBoxButton.OK);
            }
            else
            {
                //Verifica se o sapato é nulo
                if (SapatoSelecionado != null && SapatoSelecionado.ID > 0)
                {
                    //Busca no banco um tamanho igual ao informado e que pertença ao sapato informado
                    var tamanho = ctx.tamanhosSapatos.Where(t => t.SapatoId == SapatoSelecionado.ID).Where(t => t.Tamanho == TamanhoTemp.Tamanho).Select(t => t).ToList();

                    //Verifica se retornou resultados
                    if (tamanho.Count() == 0)
                    {
                        //Instancia novo tamanho de sapato
                        TamanhoSelecionado = new TamanhoSapato();

                        //Atribui valores
                        TamanhoSelecionado.SapatoId   = SapatoSelecionado.ID;
                        TamanhoSelecionado.Tamanho    = TamanhoTemp.Tamanho;
                        TamanhoSelecionado.Quantidade = QuantidadeInfo;
                        TamanhoSelecionado.Sapato     = SapatoSelecionado;

                        //Adciona ao contexto
                        ctx.Entry(SapatoSelecionado).State = System.Data.Entity.EntityState.Unchanged;
                        ctx.tamanhosSapatos.Add(TamanhoSelecionado);
                    }
                    else
                    {
                        //Busca no contexto um tamanho pelo ID
                        TamanhoSapato ToSave = ctx.tamanhosSapatos.Find(tamanho[0].ID);

                        //Altera a quantidade
                        ToSave.Quantidade = ToSave.Quantidade + QuantidadeInfo;
                    }

                    //Salva alterações
                    ctx.SaveChanges();

                    //Instancia nova janela de sapatos
                    WindowSapato window = new WindowSapato();

                    //Menssagem de sucesso
                    MessageBox.Show("Tamanho cadastrado com sucesso", "Sucesso", MessageBoxButton.OK);

                    //Mostra a janela de sapatos
                    window.Show();

                    //Fecha essa janela
                    this.Close();
                }
            }
        }
コード例 #4
0
        //Ação de apertar tecla no grid
        private void GridPessoaJuridica_PreviewKeyDown(object sender, KeyEventArgs e)
        {
            //Verifica se é a tecla delete
            if (e.Key == Key.Delete)
            {
                //Menssagem de confirmação
                if (MessageBox.Show("Deseja apagar a pessoa " + PessoaJuridicaSelecionada.Nome + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    //Habilita deletar linhas
                    gridPessoaJuridica.CanUserDeleteRows = true;

                    //Variavel de contexto
                    ModelSapatos ctx = new ModelSapatos();

                    //Busca a pessoa no contexto pelo ID
                    PessoaJuridica ToDelete = ctx.pessoasJuridicas.Find(PessoaJuridicaSelecionada.ID);

                    //Marca como deletada
                    ctx.Entry(ToDelete).State =
                        System.Data.Entity.EntityState.Deleted;

                    //Salva alterações
                    ctx.SaveChanges();
                }
                else
                {
                    //Impede o usuário de deletar linhas
                    gridPessoaJuridica.CanUserDeleteRows = false;
                }
            }
        }
コード例 #5
0
        //Ação ao apertar tecla no grid
        private void GridPessoaFisica_KeyDown(object sender, KeyEventArgs e)
        {
            //Verifica se foi pressionado o delete
            if (e.Key == Key.Delete)
            {
                //Menssagem de confirmação
                if (MessageBox.Show("Deseja apagar a pessoa " + PessoaFisicaSelecionada.Nome + "?", "Confirmação", MessageBoxButton.YesNo) == MessageBoxResult.Yes)
                {
                    //Habilita deletar linhas
                    gridPessoaFisica.CanUserDeleteRows = true;

                    //Variavel de contexto
                    ModelSapatos ctx = new ModelSapatos();

                    //Instancia uma variavel vinda do contexto, procurando pelo ID
                    PessoaFisica ToDelete = ctx.pessoasFisicas.Find(PessoaFisicaSelecionada.ID);

                    //Marca o dado como deletado
                    ctx.Entry(ToDelete).State =
                        System.Data.Entity.EntityState.Deleted;

                    //Executa alterações
                    ctx.SaveChanges();
                }
                else
                {
                    //Impossibilita o usuário de deletar as linhas
                    gridPessoaFisica.CanUserDeleteRows = false;
                }
            }
        }
コード例 #6
0
        //Construtor
        public WindowTamanhoSapato()
        {
            InitializeComponent();

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();
        }
コード例 #7
0
        //Construtor
        public WindowVenda()
        {
            InitializeComponent();

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Pega lista de pessoas fisicas
            this.PessoasFisicas = ctx.pessoasFisicas.ToList();

            //Pega lista de pessoas juridicas
            this.PessoasJuridicas = ctx.pessoasJuridicas.ToList();

            //Pega lista de sapatos
            this.Sapatos = ctx.sapatos.ToList();

            //Percorre a lista de pessoas fisicas
            foreach (PessoaFisica pessoa in PessoasFisicas)
            {
                //Instancia nova pessoa
                PessoaToTransfer = new Pessoa();

                //Atribui dados
                PessoaToTransfer.ID   = pessoa.ID;
                PessoaToTransfer.Nome = pessoa.Nome;

                //Adciona a lista de pessoas
                Pessoas.Add(PessoaToTransfer);
            }

            //Percorre a lista de pessoas juridicas
            foreach (PessoaJuridica pessoa in PessoasJuridicas)
            {
                //Instancia nova pessoa
                PessoaToTransfer = new Pessoa();

                //Atribui dados
                PessoaToTransfer.ID   = pessoa.ID;
                PessoaToTransfer.Nome = pessoa.Nome;

                //Adciona a lista de pessoas
                Pessoas.Add(PessoaToTransfer);
            }

            //Percorre a lista de sapatos
            foreach (Sapato sapato in Sapatos)
            {
                //Instancia uma nova lista
                sapato.Tamanhos = new List <TamanhoSapato>();

                //Adciona os tamanhos pertencentes a esse sapato a lista
                sapato.Tamanhos = ctx.tamanhosSapatos.Where(t => t.SapatoId == sapato.ID).Select(t => t).ToList();
            }
        }
コード例 #8
0
        //Construtor
        public WindowPessoaJuridica()
        {
            InitializeComponent();

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Pega uma lista de pessoas juridicas
            this.PessoasJuridicas = ctx.pessoasJuridicas.ToList();
        }
コード例 #9
0
        //Construtor
        public WindowPessoaFisica()
        {
            InitializeComponent();

            //Seta a data de nascimento atual
            this.PessoaFisicaSelecionada.DataNascimento = DateTime.Now;

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Pega lista de Pessoas Fisicas
            this.PessoasFisicas = ctx.pessoasFisicas.ToList();
        }
コード例 #10
0
        private void exportarVendaPorPJ_Click(object sender, RoutedEventArgs e)
        {
            //Verifica se tem algum sapato delecionado
            if (PessoaJuridicaSelecionada.ID == 0)
            {
                //Menssagem de aviso
                MessageBox.Show("Selecione uma pessoa para gerar o relatório", "Aviso", MessageBoxButton.OK);
            }
            else
            {
                //Instancia a classe de exportação e o contexto
                DataExporter exportador = new DataExporter();
                ModelSapatos ctx        = new ModelSapatos();

                //Instancia um explorador de arquivos
                Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();

                //Filtro do dialogo
                dlg.Filter = "Excel (.xlsx)|*.xlsx";

                //Define atributos para o arquivo
                dlg.FileName   = "Relatório de vendas do cliente " + PessoaJuridicaSelecionada.Nome; // Nome padrão
                dlg.DefaultExt = ".xlsx";                                                            // Extensão do arquivo

                //Pega o resultado, se o usuário apertou cancel ou deu continuidade
                Nullable <bool> result = dlg.ShowDialog();

                //Se o usuário selecionou um local ele execulta o metodo
                if (result == true)
                {
                    //Busca lista de vendas
                    var vendas = ctx.vendas.Where(t => t.pessoaId == PessoaJuridicaSelecionada.ID).Select(t => t).ToList();

                    //Chama o metodo para gerar a lista
                    if (exportador.CriarPlanilhaVendaPorPJ(vendas, PessoaJuridicaSelecionada, dlg.FileName) == true)
                    {
                        //Mostra mensagem
                        MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK);
                    }
                    else
                    {
                        //Mostra mensagem
                        MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK);
                    }
                }
            }
        }
コード例 #11
0
        //Construtor
        public WindowEstoque()
        {
            InitializeComponent();

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Recee uma lista de sapatos
            this.Sapatos = ctx.sapatos.ToList();

            //Percorre a lista de sapatos
            foreach (Sapato sapato in Sapatos)
            {
                //Pega todos os tamanhos de sapatos relacionados a esse sapato
                sapato.Tamanhos = ctx.tamanhosSapatos.Where(t => t.SapatoId == sapato.ID).Select(t => t).ToList();

                QuantidadeTotal = 0;

                //Verifica se tem tamanhos cadastrados
                if (sapato.Tamanhos != null)
                {
                    //Percorre essa lista de tamanhos
                    foreach (TamanhoSapato tam in sapato.Tamanhos)
                    {
                        //Soma a quantidade total
                        QuantidadeTotal = QuantidadeTotal + tam.Quantidade;
                    }
                }

                //Instancia a variavel deestoque
                this.estoque = new Estoque();

                //Seta valores
                this.estoque.Modelo          = sapato.Nome;
                this.estoque.Cadarco         = sapato.Cadarco;
                this.estoque.Material        = sapato.Material;
                this.estoque.Cor             = sapato.Cor;
                this.estoque.Preco           = sapato.Preco;
                this.estoque.QuantidadeTotal = QuantidadeTotal;

                //Adciona a lista
                this.EstoqueCompleto.Add(this.estoque);
            }
        }
コード例 #12
0
        //Ação do botão de salvar
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Verifica se esta criando ou editando
            if (ModoCriar)
            {
                //Adciona a pessoa preenchida
                ctx.pessoasJuridicas.Add(PessoaJuridicaSelecionada);

                //Salva alterações
                ctx.SaveChanges();

                //Menssagem de sucesso
                MessageBox.Show("Pessoa adcionada com sucesso", "Sucesso", MessageBoxButton.OK);

                //Fecha a janela
                this.Close();
            }
            else
            {
                //Verifica se a pessoa é nula
                if (PessoaJuridicaSelecionada != null && PessoaJuridicaSelecionada.ID > 0)
                {
                    //Pega a pessoa do contexto pelo ID
                    PessoaJuridica ToSave = ctx.pessoasJuridicas.Find(PessoaJuridicaSelecionada.ID);

                    //Atribui valores
                    ToSave.Nome        = PessoaJuridicaSelecionada.Nome;
                    ToSave.RazaoSocial = PessoaJuridicaSelecionada.RazaoSocial;
                    ToSave.CNPJ        = PessoaJuridicaSelecionada.CNPJ;
                    ToSave.Endereco    = PessoaJuridicaSelecionada.Endereco;

                    //Salva as alterações
                    ctx.SaveChanges();

                    //Menssagem de sucesso
                    MessageBox.Show("Dados editados com sucesso", "Sucesso", MessageBoxButton.OK);

                    //Fecha a janela
                    this.Close();
                }
            }
        }
コード例 #13
0
        //Ação do botão de salvar
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Busca na lista de tamanhos do sapato, o tamanho selecionado
            var tamanhoToSelect = VendaSelecionada.sapato.Tamanhos.Where(t => t == TamanhoSelecionado).Select(t => t).ToList();

            //Verifica se tem a quantidade em estoque
            if (tamanhoToSelect[0].Quantidade < VendaSelecionada.Quantidade)
            {
                //Menssagem de erro
                MessageBox.Show("Quantidade insuficiente desse item, temos " + tamanhoToSelect[0].Quantidade + " no estoque!", "Aviso", MessageBoxButton.OK);
            }
            else
            {
                //Seta valores
                VendaSelecionada.sapatoId      = VendaSelecionada.sapato.ID;
                VendaSelecionada.Modelo        = VendaSelecionada.sapato.Nome;
                VendaSelecionada.PrecoUnitario = VendaSelecionada.sapato.Preco;
                VendaSelecionada.PrecoFinal    = VendaSelecionada.sapato.Preco * VendaSelecionada.Quantidade;
                VendaSelecionada.sapato        = null;
                VendaSelecionada.pessoaId      = VendaSelecionada.cliente.ID;
                VendaSelecionada.cliente       = null;
                VendaSelecionada.Tamanho       = tamanhoToSelect[0].Tamanho;

                //Instancia tamanho selecinado buscando ele do banco
                TamanhoSapato ToEdit = ctx.tamanhosSapatos.Find(tamanhoToSelect[0].ID);

                //Retira a quantidade vendida
                ToEdit.Quantidade = ToEdit.Quantidade - VendaSelecionada.Quantidade;

                //Adciona a venda a lista
                ctx.vendas.Add(VendaSelecionada);

                //Salva alterações
                ctx.SaveChanges();

                //Menssagem de erro
                MessageBox.Show("Venda realizada com sucesso", "Sucesso", MessageBoxButton.OK);

                //Fecha a janela
                this.Close();
            }
        }
コード例 #14
0
        //Construtor
        public WindowVendaList()
        {
            InitializeComponent();

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Pega uma lista de vendas
            this.Vendas = ctx.vendas.ToList();

            foreach (Venda venda in Vendas)
            {
                venda.cliente = ctx.pessoas.Find(venda.pessoaId);
                venda.sapato  = ctx.sapatos.Find(venda.sapatoId);
            }
        }
コード例 #15
0
        //Click do botão de salvar
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Verifica se esta criando ou editando
            if (ModoCriar)
            {
                //Adciona a lista
                ctx.pessoasFisicas.Add(PessoaFisicaSelecionada);

                //Salva alterações
                ctx.SaveChanges();

                //Mostra mensagem
                MessageBox.Show("Pessoa adcionada com sucesso", "Sucesso", MessageBoxButton.OK);

                //Fecha a tela
                this.Close();
            }
            else
            {
                //Verifica se esta nulo o objeto
                if (PessoaFisicaSelecionada != null && PessoaFisicaSelecionada.ID > 0)
                {
                    //Instancia uma variavel vinda do contexto, procurando pelo ID
                    PessoaFisica ToSave = ctx.pessoasFisicas.Find(PessoaFisicaSelecionada.ID);

                    //Seta valores
                    ToSave.Nome           = PessoaFisicaSelecionada.Nome;
                    ToSave.CPF            = PessoaFisicaSelecionada.CPF;
                    ToSave.DataNascimento = PessoaFisicaSelecionada.DataNascimento;

                    //Salva alterações
                    ctx.SaveChanges();

                    //Mostra menssagem
                    MessageBox.Show("Dados editados com sucesso", "Sucesso", MessageBoxButton.OK);

                    //Fecha janela
                    this.Close();
                }
            }
        }
コード例 #16
0
        //Construtor
        public WindowSapato()
        {
            InitializeComponent();

            this.DataContext = this;

            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Pega uma lista dos sapatos
            this.Sapatos = ctx.sapatos.ToList();

            //Percorre a lista de sapatos
            foreach (Sapato sapato in Sapatos)
            {
                //Instancia uma nova lista
                sapato.Tamanhos = new List <TamanhoSapato>();

                //Adciona os tamanhos pertencentes a esse sapato a lista
                sapato.Tamanhos = ctx.tamanhosSapatos.Where(t => t.SapatoId == sapato.ID).Select(t => t).ToList();
            }
        }
コード例 #17
0
        //Ação do botão de salvar
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            //Variavel de contexto
            ModelSapatos ctx = new ModelSapatos();

            //Verifica se esta criando ou editando
            if (ModoCriar)
            {
                //Codifica itmapImage em Array de binario
                JpegBitmapEncoder encoder = new JpegBitmapEncoder();
                encoder.Frames.Add(BitmapFrame.Create(imagemSelecionada));
                using (MemoryStream ms = new MemoryStream())
                {
                    encoder.Save(ms);
                    SapatoSelecionado.Imagem = ms.ToArray();
                }

                //Adciona o sapato a lista
                ctx.sapatos.Add(SapatoSelecionado);

                //Salva alterações
                ctx.SaveChanges();

                //Menssagem
                MessageBox.Show("Sapato adcionado com sucesso", "Sucesso", MessageBoxButton.OK);

                //Fecha a tela
                this.Close();
            }
            else
            {
                //Verifica se o sapato esta nulo
                if (SapatoSelecionado != null && SapatoSelecionado.ID > 0)
                {
                    //Busca o sapato no contexto pelo id
                    Sapato ToSave = ctx.sapatos.Find(SapatoSelecionado.ID);

                    //Atribui valores
                    ToSave.Nome     = SapatoSelecionado.Nome;
                    ToSave.Preco    = SapatoSelecionado.Preco;
                    ToSave.Material = SapatoSelecionado.Material;

                    if (imagemSelecionada == null)
                    {
                        ToSave.Imagem = SapatoSelecionado.Imagem;
                    }
                    else
                    {
                        //Codifica itmapImage em Array de binario
                        JpegBitmapEncoder encoder = new JpegBitmapEncoder();
                        encoder.Frames.Add(BitmapFrame.Create(imagemSelecionada));
                        using (MemoryStream ms = new MemoryStream())
                        {
                            encoder.Save(ms);
                            SapatoSelecionado.Imagem = ms.ToArray();
                        }
                    }

                    ToSave.Imagem  = SapatoSelecionado.Imagem;
                    ToSave.Cadarco = SapatoSelecionado.Cadarco;
                    ToSave.Cor     = SapatoSelecionado.Cor;

                    //Salva alterações
                    ctx.SaveChanges();

                    //Menssagem
                    MessageBox.Show("Dados editados com sucesso", "Sucesso", MessageBoxButton.OK);

                    //Fecha tela
                    this.Close();
                }
            }
        }
コード例 #18
0
        //Função de exportar dados
        private void Exportar_Click(object sender, RoutedEventArgs e)
        {
            //Instancia a classe de exportação e o contexto
            DataExporter exportador = new DataExporter();
            ModelSapatos ctx        = new ModelSapatos();

            //Instancia um explorador de arquivos
            Microsoft.Win32.SaveFileDialog dlg = new Microsoft.Win32.SaveFileDialog();

            //Filtro do dialogo
            dlg.Filter = "Excel (.xlsx)|*.xlsx";

            //Verifica qual botão foi clicado para pedir a exportação
            if (sender == exportarPF)
            {
                //Define atributos para o arquivo
                dlg.FileName   = "Relatório de pessoas físicas"; // Nome padrão
                dlg.DefaultExt = ".xlsx";                        // Extensão do arquivo

                //Pega o resultado, se o usuário apertou cancel ou deu continuidade
                Nullable <bool> result = dlg.ShowDialog();

                //Se o usuário selecionou um local ele execulta o metodo
                if (result == true)
                {
                    //Chama o metodo para gerar a lista
                    if (exportador.CriarPlanilhaPF(ctx.pessoasFisicas.ToList(), dlg.FileName) == true)
                    {
                        //Mostra mensagem
                        MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK);
                    }
                    else
                    {
                        //Mostra mensagem
                        MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK);
                    }
                }
            }
            else if (sender == exportarPJ)
            {
                //Define atributos para o arquivo
                dlg.FileName   = "Relatório de pessoas jurídicas"; // Nome padrão
                dlg.DefaultExt = ".xlsx";                          // Extensão do arquivo

                //Pega o resultado, se o usuário apertou cancel ou deu continuidade
                Nullable <bool> result = dlg.ShowDialog();

                //Se o usuário selecionou um local ele execulta o metodo
                if (result == true)
                {
                    //Chama o metodo para gerar a lista
                    if (exportador.CriarPlanilhaPJ(ctx.pessoasJuridicas.ToList(), dlg.FileName) == true)
                    {
                        //Mostra mensagem
                        MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK);
                    }
                    else
                    {
                        //Mostra mensagem
                        MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK);
                    }
                }
            }
            else if (sender == exportarSapato)
            {
                //Define atributos para o arquivo
                dlg.FileName   = "Relatório de sapatos"; // Nome padrão
                dlg.DefaultExt = ".xlsx";                // Extensão do arquivo

                //Pega o resultado, se o usuário apertou cancel ou deu continuidade
                Nullable <bool> result = dlg.ShowDialog();

                //Se o usuário selecionou um local ele execulta o metodo
                if (result == true)
                {
                    //Chama o metodo para gerar a lista
                    if (exportador.CriarPlanilhaSapato(ctx.sapatos.ToList(), dlg.FileName) == true)
                    {
                        //Mostra mensagem
                        MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK);
                    }
                    else
                    {
                        //Mostra mensagem
                        MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK);
                    }
                }
            }
            else if (sender == exportarEstoque)
            {
                //Define atributos para o arquivo
                dlg.FileName   = "Relatório de estoque"; // Nome padrão
                dlg.DefaultExt = ".xlsx";                // Extensão do arquivo

                //Pega o resultado, se o usuário apertou cancel ou deu continuidade
                Nullable <bool> result = dlg.ShowDialog();

                //Se o usuário selecionou um local ele execulta o metodo
                if (result == true)
                {
                    //Chama o metodo para gerar a lista
                    if (exportador.CriarPlanilhaEstoque(ctx.sapatos.ToList(), dlg.FileName) == true)
                    {
                        //Mostra mensagem
                        MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK);
                    }
                    else
                    {
                        //Mostra mensagem
                        MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK);
                    }
                }
            }
            else if (sender == exportarVenda)
            {
                //Define atributos para o arquivo
                dlg.FileName   = "Relatório de venda"; // Nome padrão
                dlg.DefaultExt = ".xlsx";              // Extensão do arquivo

                //Pega o resultado, se o usuário apertou cancel ou deu continuidade
                Nullable <bool> result = dlg.ShowDialog();

                //Se o usuário selecionou um local ele execulta o metodo
                if (result == true)
                {
                    //Chama o metodo para gerar a lista
                    if (exportador.CriarPlanilhaVendas(ctx.vendas.ToList(), dlg.FileName) == true)
                    {
                        //Mostra mensagem
                        MessageBox.Show("Planilha gerada com sucesso", "Sucesso", MessageBoxButton.OK);
                    }
                    else
                    {
                        //Mostra mensagem
                        MessageBox.Show("Erro ao gerar planilha", "Erro", MessageBoxButton.OK);
                    }
                }
            }
        }