public void cargarDatos()
    {
        try
        {
            string strId    = Request.Params["Id"];
            int    codLibro = Int32.Parse(strId);

            List <Autores> autor = AutorBRL.getAutorById(codLibro);
            ComboListaAutor.DataSource = autor;
            ComboListaAutor.DataBind();


            List <Categorias> categoria = CategoriaBRL.getCategoriaById(codLibro);
            ComboListaCategoria.DataSource = categoria;
            ComboListaCategoria.DataBind();

            Libros lib = libroBRL.getLibroById(codLibro);
            txtTitulo.Text   = lib.Titulo;
            TxtSinopsis.Text = lib.Sinopsis;

            lib = libroBRL.getLibroById(codLibro);
            imgLibro.ImageUrl = lib.Portada;
        }
        catch (Exception ex)
        {
        }
    }
    public void cargarDatos()
    {
        try
        {
            //Ocultar Valorar

            //lblValoreLibro.Visible = false;
            //valoreLibro.Visible = false;



            string strId    = Request.Params["Id"];
            int    codLibro = Int32.Parse(strId);

            Libros Libro = libroBRL.getLibroById(codLibro);

            lblTitulo.Text = Libro.Titulo;

            ImgPortada.ImageUrl = Libro.Portada;

            Autores autor = AutorBRL.getAutorNombreById(codLibro);
            lblAutor.Text = autor.nombreCompleto;

            Categorias categoria = CategoriaBRL.getCategoriaNombreById(codLibro);
            lblCategoria.Text = categoria.Nombre;

            //lblValoracion.Text = ""+ Libro.Valoracion;

            PSinopsis.InnerText = Libro.Sinopsis;
        }
        catch (Exception ex)
        {
        }
    }
 /// <summary>
 /// Evento Click para eliminar una categoria
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void BtnEliminar_Click(object sender, RoutedEventArgs e)
 {
     if (txtnombreCategoria.Text == "")
     {
         MessageBox.Show("Seleccione un registro de la lista para eliminarlo");
     }
     else
     {
         if (MessageBox.Show("Esta Seguro de Eliminar la Categoria?", "Eliminar", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
         {
             //Eliminacion Logica
             try
             {
                 brl = new CategoriaBRL(categoria);
                 brl.Delete();
                 LimpiarCampos();
                 MessageBox.Show("Eliminado Exitosamente");
                 txtnombreCategoria.IsEnabled = false;
                 LoadDataGrid();
             }
             catch (Exception)
             {
                 MessageBox.Show("Ocurrio un error al eliminar la Categoria intente nuevamente si el error persiste comuniquese con el administrador de sistemas");
             }
         }
     }
 }
        private void LoadDataGrid()
        {
            try
            {
                brl = new ArticuloBRL();
                dgdDatos.ItemsSource           = brl.Select().DefaultView;
                dgdDatos.ItemsSource           = brl.SelectBusquedaArticulos(txtBuscarArticulo.Text).DefaultView;
                dgdDatos.Columns[0].Visibility = Visibility.Hidden;
                dgdDatos.Columns[3].Visibility = Visibility.Hidden;

                catBRL = new CategoriaBRL();
                cbxCategoria.DisplayMemberPath = "nombreCategoria";
                cbxCategoria.SelectedValuePath = "idCategoria";
                cbxCategoria.ItemsSource       = catBRL.SelectCategorias().DefaultView;
                cbxCategoria.SelectedIndex     = 0;

                provBRL = new ProvedorBRL();
                cbxProvedor.DisplayMemberPath = "razonSocialProvedor";
                cbxProvedor.SelectedValuePath = "idProvedor";
                cbxProvedor.ItemsSource       = provBRL.SelectProvedores().DefaultView;
                cbxProvedor.SelectedIndex     = 0;
            }
            catch (Exception)
            {
                MessageBox.Show("Ocurrio un error al cargar los datos intente salir y volver a entrar si el error persiste comuniquese con el administrador de sistemas");
            }
        }
    public void cargarCombos()
    {
        List <Autores> autores = AutorBRL.getAutor();

        ComboListaAutor.DataSource = autores;
        ComboListaAutor.DataBind();

        List <Categorias> categoria = CategoriaBRL.getCategoria();

        ComboListaCategoria.DataSource = categoria;
        ComboListaCategoria.DataBind();
    }
 private void btnEliminar_Click(object sender, RoutedEventArgs e)
 {
     if (dgvDatos.SelectedItem != null && cat != null)
     {
         if (MessageBox.Show("Esta realmente seguro de eliminar el registro?", "Eliminar", MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
         {
             brl = new CategoriaBRL(cat);
             brl.delete();
             LlenarDataGrid();
             DesHabilitar();
         }
     }
 }
 void LlenarDataGrid()
 {
     try
     {
         brl = new CategoriaBRL();
         dgvDatos.ItemsSource           = null;
         dgvDatos.ItemsSource           = brl.select().DefaultView;
         dgvDatos.Columns[0].Visibility = Visibility.Hidden;
     }catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
 private void LoadDataGrid()
 {
     try
     {
         brl = new CategoriaBRL();
         dgdDatos.ItemsSource           = brl.Select().DefaultView;
         dgdDatos.ItemsSource           = brl.SelectBusquedaCategorias(txtBuscarCategorias.Text).DefaultView;
         dgdDatos.Columns[0].Visibility = Visibility.Hidden;
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
        private void preencherGridCategoria()
        {
            CategoriaDTO dto = new CategoriaDTO();

            CategoriaBRL _categoriaBRL = new CategoriaBRL();

            this.cmbCategorias.DataSource = _categoriaBRL.searchCategoria(dto);

            this.cmbCategorias.DataTextField  = "NomeCategoria";
            this.cmbCategorias.DataValueField = "IdCategoria";
            this.cmbCategorias.DataBind();

            this.cmbCategorias.Items.Insert(0, new ListItem("Todos", ""));
            //this.cmbCategoria.Attributes.Add("0", "Selecione");
        }
        /// <summary>
        /// Evento SelectionChanged para poder seleccionar una Categoria de un DataGrid
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void DgdDatos_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (dgdDatos.Items.Count > 0 && dgdDatos.SelectedItem != null)
            {
                //Realizamos Get
                try
                {
                    DataRowView dataRow = (DataRowView)dgdDatos.SelectedItem;
                    byte        id      = byte.Parse(dataRow.Row.ItemArray[0].ToString());
                    brl       = new CategoriaBRL();
                    categoria = brl.Get(id);

                    //Cargar Datos
                    txtnombreCategoria.Text = categoria.NombreCategoria;
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Ocurrio un error comuniquese con el administrador de sistemas");
                }
            }
        }
        private void dgvDatos_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (dgvDatos.SelectedItem != null && dgvDatos.Items.Count > 0)
            {
                try
                {
                    DataRowView dataRow = (DataRowView)dgvDatos.SelectedItem; //lo que se ah seleccionado lo convertimos en una fila
                    byte        id      = byte.Parse(dataRow.Row.ItemArray[0].ToString());
                    brl = new CategoriaBRL();
                    cat = brl.Get(id);

                    if (cat != null)
                    {
                        txtCategoria.Text = cat.NombreCategoria;
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
            }
        }
        private void btnGuardar_Click(object sender, RoutedEventArgs e)
        {
            switch (option)
            {
            case 1:     //Insertar
                //Creamos el Objeto
                try
                {
                    cat = new Categoria(txtCategoria.Text, 1);
                    brl = new CategoriaBRL(cat);
                    brl.insert();
                    MessageBox.Show("Categoria creada con extio..");
                    DesHabilitar();
                    LlenarDataGrid();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                break;

            case 2:     // Modificar
                try
                {
                    cat.NombreCategoria = txtCategoria.Text;
                    brl = new CategoriaBRL(cat);
                    brl.update();
                    MessageBox.Show("Categoria actualizada con extio..");
                    DesHabilitar();
                    LlenarDataGrid();
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                break;
            }
        }
        /// <summary>
        /// Evento click que Permite Insertar o Modificar una Categoria
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void BtnGuardarAccion_Click(object sender, RoutedEventArgs e)
        {
            switch (operacion)
            {
            case 1:
                //Insertar
                if (txtnombreCategoria.Text == "")
                {
                    MessageBox.Show("Debe ingresar un nombre para poder agregar una Categoria");
                }
                else
                {
                    txtnombreCategoria.Text = txtnombreCategoria.Text.Trim();
                    brl = new CategoriaBRL();
                    DataTable dt = brl.VerificarCategoria(txtnombreCategoria.Text);
                    if (dt.Rows.Count == 0)
                    {
                        if (Validate.OnlyLettersAndSpaces(txtnombreCategoria.Text))
                        {
                            try
                            {
                                dgdDatos.IsEnabled = false;
                                //Insertar
                                DateTime fechahora = DateTime.Now;
                                categoria = new Categoria(txtnombreCategoria.Text, fechahora);
                                brl       = new CategoriaBRL(categoria);
                                brl.Insert();
                                MessageBox.Show("Registro Exitoso");
                                LoadDataGrid();
                                DesHabilitar();
                                LimpiarCampos();
                                dgdDatos.IsEnabled = true;
                            }
                            catch (Exception)
                            {
                                MessageBox.Show("Existe un problema al insertar la Categoria intente nuevamente si el error persiste comuniquese con el administrador de sistemas");
                            }
                        }
                        else
                        {
                            MessageBox.Show("Solo se permite letras no numeros u otros signos");
                            LimpiarCampos();
                        }
                    }
                    else
                    {
                        MessageBox.Show("La categoria ya existe");
                    }
                }
                break;

            case 2:
                //Modificar
                if (txtnombreCategoria.Text == "" && categoria == null)
                {
                    MessageBox.Show("Tiene que seleccionar un registro de la lista para modificarlo");
                }
                else
                {
                    string nombreCategoria = categoria.NombreCategoria;
                    string nombreCambiado  = txtnombreCategoria.Text.Trim();
                    brl = new CategoriaBRL();
                    DataTable dt = brl.VerificarCategoria(txtnombreCategoria.Text);
                    if (dt.Rows.Count == 0)
                    {
                        if (Validate.OnlyLettersAndSpaces(txtnombreCategoria.Text))
                        {
                            try
                            {
                                dgdDatos.IsEnabled = true;
                                //Modificar
                                //categoria = new Categoria(txtnombreCategoria.Text);
                                categoria.NombreCategoria = nombreCambiado;
                                brl = new CategoriaBRL(categoria);
                                brl.Update();
                                MessageBox.Show("Categoria modificado exitosamente");
                                LoadDataGrid();
                                DesHabilitar();
                                LimpiarCampos();
                            }
                            catch (Exception)
                            {
                                MessageBox.Show("Ocurrio un error al modificar la Categoria intente nuevamente si el persiste comuniquese con el administrador de sistemas");
                            }
                        }
                        else
                        {
                            MessageBox.Show("Solo se permite letras no numeros u otros signos");
                        }
                    }
                    else
                    {
                        MessageBox.Show("La Categoria ya existe no se guardo ningun cambio");
                        categoria.NombreCategoria = nombreCategoria;
                        brl = new CategoriaBRL(categoria);
                        brl.Update();
                        LoadDataGrid();
                        DesHabilitar();
                        LimpiarCampos();
                    }
                }
                break;
            }
        }