disabled un sub menu item depuis une classe
Bonjour
Depuis le form principal j appelle CacheMenu() dans une lka classe My_Fonctions ajoutée depuis le menu de visual studio afin de rendre disabled un item d un sous menu du menu principal dont le nom est "menu_ouvrir".
Dans la classe My_Fonctions j ai aussi CachePanels qui fonctionne parfaitement ce qui me fait dire que le form est bien passé.
Le pb vient donc de mon code que j ai adapté de CachePanels().
Code:
1 2 3 4 5 6 7 8
| private static Form1 form = null;
public Form1()
{
InitializeComponent();
form = this;
My_Fonctions.CachePanels(form);
My_Fonctions.CacheMenu(form, "ouvrir");
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| public static class My_Fonctions
{
public static void CachePanels(Form1 frm)
{
foreach (var control in frm.Controls)
{
if (control is Panel)
{
((Panel)control).Visible = false;
}
}
}
public static void CacheMenu(Form1 frm, string nom)
{
foreach (var control in frm.Controls)
{
if (control is ToolStripMenuItem)
{
if (((ToolStripMenuItem)control).Name.ToLower() == "menu_"+nom)
{
((ToolStripMenuItem)control).Enabled = false;
}
}
}
}
} |
Pouvez vous m indiquer s il vous plait où est mon erreur et éventuellement s'il y a une façon plus elegante de coder cette action de façon comprehensible pour un débutant comme moi.
Je vous en remercie par avance