2012-02-27 2 views
1

Im пытается передать переменную строки на другую страницу. В основной код страницы выглядит следующим образом:перенос переменной на другую страницу в телефоне Windows 7

Page p1 = new Page1(); 
NavigationService.Navigate(new Uri("/Page1.xaml", UriKind.Relative)); 
p1.lalala("sdfsdfsd"); 

в Page1 код выглядит следующим образом:

public partial class Page1 : PhoneApplicationPage 
{ 
    public Page1() 
    { 
     InitializeComponent(); 
    } 

    public void lalala(string i) 
    { 
     textBlock1.Text = i; 
    } 
} 

и, конечно же, ничего не происходит, TextBlock остается пустым. и не должен, я знаю. Я действительно не знаю, как быстро перевести на другую страницу значение переменной. Я говорю спасибо заранее и извиняюсь за действительно глупый вопрос.

+0

См http://stackoverflow.com/questions/5283565/save-variables-wp7/5284429 # 5284429 –

+0

извините за то, что повторил вопрос – tbsasa

ответ

3

передача его на Ури в навигации, как

NavigationService.Navigate(new Uri("/Page1.xaml?lalala=sdfsdfsd", UriKind.Relative)); 

, а затем извлечь его из строки запроса в навигационном событие в Page1

string lalala = this.NavigationContext.QueryString["lalala"]; 
textBlock.Text = lalala; 
+0

большое спасибо! – tbsasa

+0

О, извините, но когда я поместил этот код в Page1() {}, я вижу «необработанное исключение в« System.NullReferenceException »« – tbsasa

+0

и когда я помещаю этот код в защищенное переопределение void OnNavigatedFrom (System.Windows.Navigation .NavigationEventArgs e), ничего не происходит с текстовым блоком. – tbsasa

Смежные вопросы