我有2个ContextMenus,第二个是从第一个调用的。问题2 ContextMenus
处理程序用于第一(第二创建):
private void MenuItem_Tap(object sender, System.Windows.Input.GestureEventArgs e)
{
MenuItem mI = (MenuItem)sender;
if (mI.Header.ToString() == "England")
{
cM.Items.Clear();
cM.Items.Add(new MenuItem() { Header = "Barclays PL" });
cM.Items.Add(new MenuItem() { Header = "Championship" });
cM.Items.Add(new MenuItem() { Header = "League 1" });
cM.Items.Add(new MenuItem() { Header = "League 2" });
cM.Items.Add(new MenuItem() { Header = "Conference" });
cM.Tap += MenuItem_Tap1;
//if (cM.Parent == null)
//{
cM.IsOpen = true;
//}
}
}
处理程序为第二:
private void MenuItem_Tap1(object sender, System.Windows.Input.GestureEventArgs e)
{
MenuItem mI1 = (MenuItem)sender;
if (mI.Header.ToString() == "Barclays PL")
this.NavigationService.Navigate(new Uri("/pEng.xaml", UriKind.Relative));
}
但有System.InvalidCastException在第二处理程序(菜单项MI1 =(菜单项)发送方)。
请帮帮我,怎么了?
什么是发件人的类型? (将鼠标悬停在其上并查看类型) – 2012-03-27 20:17:32
ContextMenu。在第一种情况下,好的 – 2012-03-27 20:20:05