Вы можете попробовать что-то вроде этого:
<MenuItem Header="_Menu">
<MenuItem Header="Menu1" Click="MenuItem_Click" Tag="1" />
<MenuItem Header="Menu2" Click="MenuItem_Click" Tag="2" />
<MenuItem Header="Menu3" Click="MenuItem_Click" Tag="3" />
</MenuItem>
И в коде:
private void MenuItem_Click(object sender, RoutedEventArgs e)
{
MenuItem mi = sender as MenuItem;
if (mi != null)
{
int tag;
int.TryParse(mi.Tag.ToString(), out tag);
switch (tag)
{
case 1:
break;
case 2:
break;
case 3:
break;
}
}
}
РЕДАКТИРОВАТЬ:
Чтобы изменить Tag
уже созданных MenuItems
вы можете использовать это:
int poz = 10;
foreach (MenuItem menuItem in mi.Items)
{
menuItem.Tag = poz++;
}
, где mi
- имя родительского меню