private void UcMenu_event_btnGuardar_Click(object sender, EventArgs e)
 {
     try
     {
         this.Cursor = Cursors.WaitCursor;
         if (treeListMenu.Nodes.Count < 1)
         {
             MessageBox.Show("No hay datos para grabar, primero filtre el menu", "Advertencia!", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
             return;
         }
         EstablecerCheckeo(treeListMenu.Nodes);
         var listaModificada = (from c in listaBinding
                                where c.SeModificoValor == true || c.Checkeado != c.Existe
                                select c);
         if (listaModificada.Count() > 0)
         {
             seg_Menu_x_Empresa_x_Usuario_bus bus = new seg_Menu_x_Empresa_x_Usuario_bus();
             string msg   = "";
             bool   grabo = bus.GrabarDB(listaModificada.ToList(), ref msg);
             if (grabo)
             {
                 foreach (var item in listaModificada.ToList())
                 {
                     item.SeModificoValor = false;
                 }
                 CargarMenu();
             }
             else
             {
                 MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else
         {
             MessageBox.Show("No hay cambios por modificar", "Mensaje", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
     finally
     {
         this.Cursor = Cursors.Default;
     }
 }
 private void CargarMenu()
 {
     try
     {
         seg_Menu_x_Empresa_x_Usuario_bus bus = new seg_Menu_x_Empresa_x_Usuario_bus();
         string msg       = "";
         int    idEmpresa = (int)searchLookUpEditEmpresa.EditValue;
         string idUsuario = (string)searchLookUpEditUsuario.EditValue;
         List <seg_Menu_x_Empresa_x_Usuario_info> listMenu = bus.Get_List_DescripcionMenu_x_Empresa_x_Usuario(idEmpresa, idUsuario, ref msg);
         if (msg.Equals(""))
         {
             listMenu.AddRange(bus.Get_No_List_DescripcionMenu_x_Empresa_x_Usuario(idEmpresa, idUsuario, ref msg));
             if (msg.Equals(""))
             {
                 listaBinding.Clear();
                 foreach (seg_Menu_x_Empresa_x_Usuario_info item in listMenu)
                 {
                     listaBinding.Add(item);
                 }
                 treeListMenu.DataSource = listaBinding;
                 treeListMenu.ExpandAll();
                 CheckearMenu(treeListMenu.Nodes);
                 ArreglarCheckeo(treeListMenu.Nodes);
             }
             else
             {
                 MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
         else
         {
             MessageBox.Show(msg, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }