我有一个菜单项有儿童菜单项。当其中一个菜单项被点击时,一个事件将被触发,并根据点击菜单项的索引执行一些操作。我见过这样的应用程序,但在这些情况下,菜单项的名称是标准而不是索引。我想是这样的:菜单项点击活动根据索引
private void MI_Click (object sender, RoutedEventArgs e)
{
MenuItem mnu = (MenuItem)e.OriginalSource;
switch (mnu.Items.Index) // I know there is no such thing
{
case 0: {// do something}
case 1: {// do something}
// and so on
}
}
为什么需要这个名字?您可以为每个项目创建单独的“Click”事件处理程序,或者如果使用“MVVM”,则每个项目都可以拥有自己的“Command”绑定。 – 2012-03-25 16:04:06
因为我经常添加和删除菜单项。 – Shibli 2012-03-25 16:04:56