wp7 - application.current как значение приложения не может быть нулевым - PullRequest
0 голосов
/ 15 февраля 2011

Я поместил некоторые свойства в файл App.xaml.cs, который я использую для хранения данных и заполнения текстовых полей при навигации по своему приложению:

    public String appRXName { set; get; }
    public String appRXNumber { set; get; }

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

По сути, это работало, когда у меня было это внутри оригинального элемента управления Pivot. Как только я переместил его на отдельную страницу (сводная страница называет его), я начал получать эту ошибку:

System.ArgumentNullException was unhandled Message=Value can not be null. Parameter name: Text

Независимо от того, на какую страницу я нажимаю, всегда второй элемент в списке отображает ошибку.

txtRxNotes.Text = (Application.Current as App).appDosageNotes;
txtQuantity.Text = (Application.Current as App).appQuantity.ToString();

Я нашел в Интернете что-то о RootVisual, но я не уверен, смотрю ли я на это или нет. У кого-нибудь есть идеи?

1 Ответ

2 голосов
/ 15 февраля 2011

ArgumentNullException выбрасывается, потому что значение, которое вы пытаетесь установить для свойства Text, равно null, чего вы не можете сделать;свойство Text не допускает значения типа null.

Не зная, как и когда устанавливаются эти свойства уровня приложения, сложно дать хорошее объяснение того, почему поведение отличается от вашего рефакторинга, но вы могли былибо:

  • Поставьте нулевую проверку в коде, который обращается к этим свойствам уровня приложения.
  • Инициализируйте свойства уровня приложения в string.Empty в конструкторе приложения.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...