Ejemplo n.º 1
0
        /// <summary>
        /// Carrega e popula o menu do form
        /// </summary>
        private void CarregaMenu(int idPerfil)
        {
            //Instanciando os objetos
            //-----------------------
            rMenu regraMenu = new rMenu();
            //Declarando DataTables onde serão armazenados os itens de Menu e os SubMenus
            //---------------------------------------------------------------------------
            DataTable dtMenu;

            //Array para armazenar os itens do menu
            //-------------------------------------
            ToolStripMenuItem[] itemMenuP;
            try
            {
                this.ApagaMenu();
                //Busca e carrega o DataTable com os Menus Relacionados a um Perfil
                //-----------------------------------------------------------------
                dtMenu = regraMenu.BuscaMenu(idPerfil);
                //Declara o tamanho do Array baseado no tamanho do DataTable com os menus
                //-----------------------------------------------------------------------
                itemMenuP = new ToolStripMenuItem[dtMenu.Rows.Count + 1];
                for (int contador = 0; contador < dtMenu.Rows.Count; contador++)
                {
                    itemMenuP[contador] = new ToolStripMenuItem(dtMenu.Rows[contador]["Menu"].ToString());
                    this.mnuPrincipal.Items.AddRange(new ToolStripMenuItem[] { itemMenuP[contador] });

                    if (dtMenu.Rows[contador]["ende"] != DBNull.Value)
                    {
                        itemMenuP[contador].Click += new EventHandler(frmInicial_Click);
                        _dicEventos.Add(dtMenu.Rows[contador]["Menu"].ToString(), dtMenu.Rows[contador]["ende"]);
                    }

                    //Caso exista adicionas os menus na coleção e adiciona a chamada dos eventos
                    //--------------------------------------------------------------------------
                    this.PreencheSubMenu(itemMenuP[contador], dtMenu.Rows[contador]);
                }
                this.mnuPrincipal.Items.AddRange(new ToolStripMenuItem[] { this.deslogarToolStripMenuItem });
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Atenção", MessageBoxButtons.OK,
                                MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
            }
            finally
            {
                regraMenu = null;
                itemMenuP = null;
                dtMenu    = null;
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Busca Menu atraves do filtro escolhido pelo usuario
        /// </summary>
        /// <param name="menu">o filtro passado pelo usuário pode ser Vazio</param>
        /// <returns>DataTable com o resultado da query</returns>
        private DataTable BuscaMenu(string menu)
        {
            rMenu regraMenu = new rMenu();

            try
            {
                return(regraMenu.TelaBuscaMenu(menu));
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                regraMenu = null;
            }
        }
Ejemplo n.º 3
0
        private void PreencheSubMenu(ToolStripMenuItem itemMenuPai, DataRow drLinha)
        {
            rMenu             regraSubMenu;
            DataTable         dtSubMenu;
            ToolStripMenuItem itemSubMenu;
            int idMenu;

            try
            {
                regraSubMenu = new rMenu();
                idMenu       = Convert.ToInt32(drLinha["id_menu"]);
                dtSubMenu    = regraSubMenu.BuscaSubMenu(idMenu);
                if (dtSubMenu.Rows.Count > 0)
                {
                    for (int i = 0; i < dtSubMenu.Rows.Count; i++)
                    {
                        itemSubMenu = new ToolStripMenuItem(dtSubMenu.Rows[i]["dsc_menu"].ToString());
                        itemMenuPai.DropDownItems.AddRange(new ToolStripMenuItem[] { itemSubMenu });

                        if (dtSubMenu.Rows[i]["ende"] != DBNull.Value)
                        {
                            itemMenuPai.DropDownItems[i].Click += new EventHandler(frmInicial_Click);
                            _dicEventos.Add(dtSubMenu.Rows[i]["dsc_menu"].ToString(), dtSubMenu.Rows[i]["ende"]);
                        }

                        this.PreencheSubMenu(itemSubMenu, dtSubMenu.Rows[i]);
                    }
                }
                else
                {
                    /*//Caso não exista apenas adiciona o evento ao controle
                     * //----------------------------------------------------
                     * itemMenuPai.DropDownItems.Add(drLinha["dsc_menu"].ToString());
                     * itemMenuPai.Click += new EventHandler(frmInicial_Click);
                     * _dicEventos.Add(drLinha["dsc_menu"].ToString(), drLinha["ende"]);*/
                }
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
            }
        }
Ejemplo n.º 4
0
        private void PopulaGrid()
        {
            rMenu     regraMenu = new rMenu();
            DataTable dt;

            try
            {
                dt = regraMenu.TelaBuscaMenu(this.txtFiltro.Text);
                this.dgMenu.DataSource = dt;
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                regraMenu = null;
            }
        }