Example #1
0
 private void frmMenuItem_Load(object sender, EventArgs e)
 {
     try
     {
         ads = ora_menuItem.dm_bv_menuItem();
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
     f_Set_Right();
 }
Example #2
0
        private void gan_right()
        {
            int  num     = 0;
            int  num2    = 0;
            bool visible = false;

            s_right = "+" + s_right.Trim('+') + "+";
            DataTable dtQuyen = new DataTable("quyen");
            CMenuItem mn      = new CMenuItem();

            dtQuyen            = mn.dm_bv_menuItem().Tables[0];
            dtQuyen.PrimaryKey = new DataColumn[1] {
                dtQuyen.Columns["id"]
            };
            CBV_loginDAO bvdlogin = new CBV_loginDAO();

            for (int i = 0; i < (this.mainMenu1.MenuItems.Count); i++)
            {
                //visible = false;
                visible = bvisable;
                for (int j = 0; j < this.mainMenu1.MenuItems[i].MenuItems.Count; j++)
                {
                    if (this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems.Count == 0)
                    {
                        if (this.mainMenu1.MenuItems[i].MenuItems[j].Text != "-")
                        {
                            string s_MergeOrder = this.mainMenu1.MenuItems[i].MenuItems[j].MergeOrder.ToString().PadLeft(4, '0');
                            this.mainMenu1.MenuItems[i].MenuItems[j].Visible = (bvisable == true) ? true :((this.s_right.IndexOf("+" + s_MergeOrder + "+") != -1) && (dtQuyen.Rows.Find(s_MergeOrder) != null));
                            if (!visible)
                            {
                                visible = this.mainMenu1.MenuItems[i].MenuItems[j].Visible;
                            }
                        }
                        else
                        {
                            this.mainMenu1.MenuItems[i].MenuItems[j].Visible = false;
                        }
                    }
                    else
                    {
                        num = 0;
                        for (int k = 0; k < this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems.Count; k++)
                        {
                            if (this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems.Count == 0)
                            {
                                if (this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].Text != "-")
                                {
                                    string s_MergeOrder = this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MergeOrder.ToString().PadLeft(4, '0');
                                    this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].Visible = (bvisable == true)?true:((this.s_right.IndexOf("+" + s_MergeOrder + "+") != -1) && (dtQuyen.Rows.Find(s_MergeOrder) != null));
                                }
                                else
                                {
                                    this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].Visible = false;
                                }
                                num += this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].Visible ? 1 : 0;
                            }
                            else
                            {
                                num2 = 0;
                                for (int l = 0; l < this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems.Count; l++)
                                {
                                    if (this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems[l].Text != "-")
                                    {
                                        string s_MergeOrder = this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems[l].MergeOrder.ToString().PadLeft(4, '0');
                                        this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems[l].Visible = (bvisable == true)? true :((this.s_right.IndexOf("+" + s_MergeOrder + "+") != -1) && (dtQuyen.Rows.Find(s_MergeOrder) != null));
                                    }
                                    else
                                    {
                                        this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems[l].Visible = false;
                                    }
                                    num2 += this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].MenuItems[l].Visible ? 1 : 0;
                                }
                                this.mainMenu1.MenuItems[i].MenuItems[j].MenuItems[k].Visible = num != 0;
                            }
                        }
                        this.mainMenu1.MenuItems[i].MenuItems[j].Visible = num != 0;
                        if (!visible)
                        {
                            visible = num != 0;
                        }
                    }
                    this.mainMenu1.MenuItems[i].Visible = visible;
                }
            }
        }