Voor het genereren van een menu heb ik een recursieve methode geschreven, deze werkt verder goed. In deze methode wordt ook gebruik gemaakt van een andere methode welke een MenuItem aanmaakt welke toegevoegd kan worden aan het menu (of aan de child collectie van een ander item).
Deze methode ziet er als volgt uit:
En dan wordt er aan het menu natuurlijk een eventhandler gekoppeld:
Het probleem is dat bij de MenuItems welke als eerste in het menu staan, dus eigen de ''root' items treedt een fout op wanneer je deze selecteerd.
De foutmelding is als volgt:
Kan een uitgeschakelde of niet-selecteerbare opdracht niet selecteren.
Hierna heb ik dus (zoals je kunt zien in de bovenstaande code) geforceerd dat de eigenschappen als Selected en Selectable goed staan ingesteld, dit maakte echter niet uit. Klik ik op een child, dan wordt het event wel goed aangeroepen.
Het vreemde is dat wanneer ik gewoon in de designer een MenuItem toevoeg in de root, het dan wel goed werkt? Zie ik een eigenschap over het hoofd welke ik niet goed instel oid?! De NavigateUrl gebruiken is btw geen optie hij moet namelijk een asynchrone postback veroorzaken.
Wie o wie, ziet wat ik fout doe?
Deze methode ziet er als volgt uit:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
| MenuItem CreateMenuItem(ORM.SubItem item) { MenuItem menu = new MenuItem(); menu.Text = item.Text; menu.Value = item.SubItemID.ToString(); menu.Selected = false; menu.Selectable = true; // Niet relevant return menu; } |
En dan wordt er aan het menu natuurlijk een eventhandler gekoppeld:
C#:
1
| menu.MenuItemClick += new MenuEventHandler(menu_MenuItemClick); |
Het probleem is dat bij de MenuItems welke als eerste in het menu staan, dus eigen de ''root' items treedt een fout op wanneer je deze selecteerd.
De foutmelding is als volgt:
Kan een uitgeschakelde of niet-selecteerbare opdracht niet selecteren.
Hierna heb ik dus (zoals je kunt zien in de bovenstaande code) geforceerd dat de eigenschappen als Selected en Selectable goed staan ingesteld, dit maakte echter niet uit. Klik ik op een child, dan wordt het event wel goed aangeroepen.
Het vreemde is dat wanneer ik gewoon in de designer een MenuItem toevoeg in de root, het dan wel goed werkt? Zie ik een eigenschap over het hoofd welke ik niet goed instel oid?! De NavigateUrl gebruiken is btw geen optie hij moet namelijk een asynchrone postback veroorzaken.
Wie o wie, ziet wat ik fout doe?