2015-02-25 3 views
1

Я создаю приложение напоминания с использованием C# в Visual Studio 2013. Одна из страниц предназначена для запуска уведомления.Ошибка при получении данных из NavigationContext

Мой код:

protected override void OnNavigatedTo(NavigationEventArgs e) 
    { 

     base.OnNavigatedTo(e); 

     string Combobox = ""; 
     string Content = ""; 

    NavigationContext.QueryString.TryGetValue("param1", out Combobox); 

    NavigationContext.QueryString.TryGetValue("param2", out Content); 

    param1TextBlock.Text = Combobox; 
    param2TextBlock.Text = Content;  

    } 

Но ошибки возникают в этой части:

 NavigationContext.QueryString.TryGetValue("param1", out Combobox); 

    NavigationContext.QueryString.TryGetValue("param2", out Content); 

Ошибка является:

Ошибка 1 Ссылка на объект требуется для не -статическое поле, метод или свойство 'System.Windows.Navigation.NavigationContext.QueryStri ng.get '

Любая идея?

+0

Просто догадайтесь, но ваши имена переменных «Содержимое» и, возможно, «Combobox» могут помешать встроенным типам. Попробуйте переименовать эти две переменные. – Hyndrix

+0

Это универсальное приложение или приложение Silverlight? –

+0

Приложение Silverlight – Judy

ответ

0
List<string> MyStringsList = new List<string>(); 

this.Frame.Navigate(typeof(PageName),MyStringsList); 

этот код используется для навигации с параметрами, вы можете получить эти параметры на навигацию на странице в OnNavigatedTo мероприятия:

проект приложения
protected override void OnNavigatedTo(NavigationEventArgs e) 
{ 

    List<string> MyRecievedParameters = e.Parameter as List<string>; 
} 
+0

это решение не работает в приложениях silverlight wp8.1 – mesbahuk

2

Скорее всего, вы создали «Windows Phone», в то время как вам нужно создать «Silverlight Windows Phone», чтобы иметь доступ к классу NavigationContext.

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