2012-03-26 8 views
0

WP7アプリケーションにSilverlightツールキットを追加しました。WP7でのSilverlightツールキットの問題

<Button Content="Country"> 
    <toolkit:ContextMenuService.ContextMenu> 
     <toolkit:ContextMenu> 
      <toolkit:MenuItem Header="England" Tag="1" Click="set_country" /> 
      <toolkit:MenuItem Header="Germany" Tag="2" Click="set_country" /> 
      <toolkit:MenuItem Header="France" Tag="3" Click="set_country" /> 
      <toolkit:MenuItem Header="Spain" Tag="4" Click="set_country" /> 
      <toolkit:MenuItem Header="Italy" Tag="5" Click="set_country" /> 
     </toolkit:ContextMenu> 
    </toolkit:ContextMenuService.ContextMenu> 
</Button> 

ハンドラ:

private void set_country(object sender, MouseEventArgs e) 
{ 
    var menuItem = (MenuItem)sender; 
    var tag = menuItem.Tag.ToString(); 
    MessageBox.Show(tag); 
} 

しかし、それはMainPage.gicsで、この文字列の問題です:

this.LayoutRoot = ((System.Windows.Controls.Grid)(this.FindName("LayoutRoot"))); 

間違い:プロパティ「Microsoft.Phone.Controlsに割り当てることができませんでした。 MenuItem.Click '。 [ライン:31ポジション:72]

+1

誓うしないでください。私はwp7ツールキットを知らないけど、あなたはmouseeventargsについて正しいのですか?それはRoutedEventargsであってはなりませんか? – Silvermind

答えて

2

あなたのイベントハンドラの署名が間違っている:

private void MenuItem_Click(object sender, RoutedEventArgs e) 
{ 
    MenuItem menuItem = (MenuItem)sender; 
    MessageBox.Show("You chose to " + menuItem.Header.ToString(),"Result",MessageBoxButton.OK); 
}