6

Menu.xaml と Main.xaml の 2 つの XAML ページがあります。

Menu.xaml には 2 つのボタン (Easy と Hard) があり、ボタンをクリックすると Main.xaml に移動します。

Main.xaml を適切に設定できるように、[Easy] または [Hard] をクリックしたときに何らかの値を渡したいと考えています。

1. C# で値/引数を渡すにはどうすればよいですか?
2. これらの値はどこで取得できますか (PageLoad など)。

4

2 に答える 2

3

Metro アプリのナビゲーションは非常にシンプルです。

C# の例:

これをクリックに追加するか、メイン ページに移動するその他のイベントに追加します。

this.Frame.Navigate(typeof(Main),myDifficulty); 

次に、移動先のページで、その OnNavigatedTo イベントで引数を取得できます。

protected override void OnNavigatedTo(NavigationEventArgs e) 
{ 
    var myDifficulty= e.Parameter; 
    ...    
} 
于 2012-09-28T17:15:20.867 に答える
3

Frame.Navigateメソッドを見てみましょう。パラメータを渡すことができるオーバーロードがあります。

例については、これを参照してください

通常、これは次のようになります。

private void OnButtonClick(object sender, EventArgs args)
{
    if (sender == easyButton)
      NavigateToDifficulty(DifficultyLevel.Easy);
    else
      NavigateToDifficulty(DifficultyLevel.Hard);
}

private void NavigateToDifficulty(DifficultyLevel difficulty)
{
   this.Frame.Navigate(typeof(DifficultyPage), difficulty)
}

ナビゲーション パラメータを取得するには、LayoutAwarePage(サンプル テンプレートに含まれている)LoadStateメソッドを参照してください。

于 2012-09-28T16:58:11.467 に答える