private async void dgvProducts_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                if (this.dgvProducts.Rows[e.RowIndex].Cells["DetailProduct"].Selected)
                {
                    this.PaintRowAndUnpaintLastSelectedRow(e.RowIndex);

                    long idProduct = (this.dgvProducts.Rows[e.RowIndex].DataBoundItem as Product).id;
                    this.dgvProductDetails.DataSource = await DetailProductService.ListDetailProductByIdProduct(idProduct);

                    this.currentProductSelected = (Product)this.dgvProducts.Rows[e.RowIndex].DataBoundItem;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        private async void dgvProducts_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                if (this.dgvProducts.Rows[e.RowIndex].Cells["DetailProduct"].Selected)
                {
                    this.PaintRowAndUnpaintLastSelectedRow(e.RowIndex);

                    long idProduct = (this.dgvProducts.Rows[e.RowIndex].DataBoundItem as Product).id;
                    this.dgvProductDetails.DataSource = await DetailProductService.ListDetailProductByIdProduct(idProduct);

                    this.currentProductSelected = (Product)this.dgvProducts.Rows[e.RowIndex].DataBoundItem;
                }
                else if (this.dgvProducts.Rows[e.RowIndex].Cells["addDetailproduct"].Selected)
                {
                    this.PaintRowAndUnpaintLastSelectedRow(e.RowIndex);

                    DialogResult result = new DialogResult();
                    FormViewMaintainDetailProduct formViewMaintainDetailProduct = new FormViewMaintainDetailProduct();
                    result = formViewMaintainDetailProduct.ShowDialog(this);

                    if (result == DialogResult.OK)
                    {
                        DetailProduct detailProductForMaintain = formViewMaintainDetailProduct.GetDetailProduct();

                        detailProductForMaintain.product = this.dgvProducts.Rows[e.RowIndex].DataBoundItem as Product;

                        DetailProduct resultDetailProduct = await DetailProductService
                                                            .RegisterDetailProduct(detailProductForMaintain);

                        FormSuccess.ConfirmationForm("REGISTRADO");
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }