2016-04-13 50 views
2

Merhaba çocuklar metin kutusu aktarmak ve başka bir sayfaya bir değeri tutan bir metin kutusu nasıl aktarılacağı wondeing edildi. Benim kod aşağıda:Nasıl Windows Phone 8.1-C# başka bir sayfaya ben uygulama geliştirme için yeni

ana değerdir bilgi

protected override void OnNavigatedTo(NavigationEventArgs e) 
    { 
     Basket Basket = e.Parameter as Basket; 

     if (Basket != null) 
     { 
      COsttxt.Text = string.Format("{0:C}", Basket.Totaltxt_TextChanged); 
     } 
    } 

gönderilen ihtiyacı olan OnNav sadece totalValue ile denedim ben

private void Confirm_Click(object sender, RoutedEventArgs e) 
    { 
     Frame.Navigate(typeof(Confirmation) , Totaltxt_TextChanged = TotalValue); 

    } 

Sepet Düğmesi o gönderilen ama bu bile NavTo sayfanın metin kutusuna ayarlamak çalışmıyor gibi görünüyor geçirilmesi gerekmektedir:

 <TextBox x:Name="COsttxt" HorizontalAlignment="Left" Height="58" Margin="229,258,0,0" TextWrapping="Wrap" Text="{Binding TotalValue}" VerticalAlignment="Top" Width="131" TextChanged="COsttxt_TextChanged"/> 

Dolayısıyla, sadece Confirmation.xaml içinde metin kutusu değeri ekranı Basket.xaml dan Totaltxt metin kutusu göndermek ve yapmak için bir yolu var mı? Sen eminim Onay sayfasına bir parametre geçiyoruz

+0

Kullanım Bu https : //msdn.microsoft.com/en-in/library/windows/apps/hh702394.aspx yöntem formu. – niksofteng

+0

Yardımlarınız için teşekkürler, ancak metin kutularının nasıl gönderileceği gerçekten belirtilmiyor. –

cevap

0

tip Basket değildir ve as dönüşüm yaptığınızda dolayısıyla sen null adlı alıyorsanız.

Sadece geçen edilmelidir

/okuma totalValue bu şekilde:

private void Confirm_Click(object sender, RoutedEventArgs e) 
{ 
    Frame.Navigate(typeof(Confirmation) , TotalValue); 
} 

protected override void OnNavigatedTo(NavigationEventArgs e) 
{ 
    var totalValue = e.Parameter as string; // or 'as' whatever is type of TotalValue 

    if (totalValue != null) 
    { 
     COsttxt.Text = string.Format("{0:C}", totalValue); 
    } 
} 

Düzenleme: aşağıdaki gibi nihai metin kutusu değerini geçmek ve aynı kod kalanını tutmak:

Frame.Navigate(typeof(Confirmation) , textboxName.Text); 
+0

yanıt için teşekkürler ama tip bir çift dize değil ve bir hata oluşursa bir çift olarak değiştirin, ben bunu değişti - totalValue = e.Parameter çift gibi çift; ve hata hala var. –

+0

Değer türleri için "olduğu gibi", yalnızca Referans olanlar için kullanamazsınız. Bunun yerine 'Convert.ToDouble (e.Parameter)' kullanın. – niksofteng

+0

Bu bilgi aktarmak değil ama totalValue için metin kutusu güncellemelerini indirim uygulamak zaman yani metin kutusuna kesin bilgi göndermek etmez, bir xml metin kutusu tam olarak o rakam ile başka gönderilecek bir yolu yoktur. –