2016-04-13 24 views
1

私がしようとしているのは、チェックアウトページの合計金額を要約ページに渡すことです。総額はチェックアウトページに表示されますが、このコードで渡そうとすると、Frame.Navigate(typeof(Summary), new { TotalValue });は何もしません。 new { TotalValue }: は、ここで私はチェックアウトページページからページへのデータの受け渡しc#windows 8.1

private double totalValue; 

      public double TotalValue 
      { 
       get { return totalValue; } 
       set 
       { 
        totalValue = value; 
        OnPropertyChanged("TotalValue"); 
       } 
      } 

     public IEnumerable<Control> Controls { get; private set; } 

protected override void OnNavigatedTo(NavigationEventArgs e) 
     { 
      BuyingPage.Flavour data = e.Parameter as BuyingPage.Flavour; 
      /** ItemChosentxt.Text = data.Name; 
       ItemChosentxt2.Text = data.Name; 
       ItemChosentxt3.Text = data.Name; 
       ItemChosentxt4.Text = data.Name;**/ 
      if (data != null) 
      { 
       Flavour.Add(data); 
       double tempTotalValue = 0; 
       foreach (var record in Flavour) 
       { 
        tempTotalValue = tempTotalValue + record.Value; 
       } 
       TotalValue = tempTotalValue; 
      } 
     } 

答えて

0

あなたはBuyingPage.Flavoure.Parameterをキャストするが、匿名型のようにそれを渡しているに私の合計量を与えることを置くコードです。 @によって提案されたように、それはシンプルな作り、

dynamic data = e.Parameter; 

または:

どちらかBuyingPage.Flavourの新しいインスタンスを作成し、Frame.Navigate(typeof(Summary), flavor);ようにそれを渡すか、または変更するには、次の行:

BuyingPage.Flavour data = e.Parameter as BuyingPage.Flavour; 

をのようなものにアルチャナ:

Frame.Navigate(typeof(Summary), TotalValue); 

次に:

+1

これは '動的な 'タイプではなく、匿名です。 –

+0

なぜそれは重要ですか?私の質問はそれに関するものではありません。その部分は機能する。私は要約ページに表示されるチェックアウトページに表示される合計値を取得することについて話しています –

+1

なぜこの "new {TotalValue}"をやっていますか? TotalValueはdouble right型ですか? – Archana

関連する問題