2016-04-13 47 views
1

Yapmaya çalıştığım toplam miktar ödeme sayfasından özet sayfasına geçirmektir. Toplam tutar, ödeme sayfasında çalışır ancak bu kodla geçmeye çalıştığımda: Frame.Navigate(typeof(Summary), new { TotalValue });, hiçbir şey yapmaz. new { TotalValue }: İşte ben ödeme sayfasındaSayfadan sayfaya geçirme c sayfa <a1> Sayfa</ a1> 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; 
      } 
     } 

cevap

0

Sen BuyingPage.Flavour için e.Parameter döküm ancak anonim bir tip gibi geçiyoruz bana Toplam miktar vermek koymak koddur. @ Önerdiği gibi, daha basit hale

dynamic data = e.Parameter; 

Veya:

Ya BuyingPage.Flavour yeni bir örneğini oluşturmak ve Frame.Navigate(typeof(Summary), flavor); gibi geçmek veya değiştirme aşağıdaki satırı:

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

gibi bir şey için Archana:

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

ve ardından:

+1

Bu bir "dinamik" tür değil, anonimdir. –

+0

Bu neden önemlidir? Benim sorum bu konuyla ilgili değil. Bu bölüm çalışıyor. Ödeme sayfasında görüntülenen toplam değeri de özet sayfasında gösterme hakkında konuşuyorum –

+1

Neden bunu "yeni {TotalValue}" yapıyorsunuz? TotalValue çift haklı mı? – Archana