wp7 - application.current as app Value can not be null

1.2k views Asked by At

I put some properties in the App.xaml.cs file which I am using to store data and populate textboxes as I navigate through my application:

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

Originally I had a pivot control that called different pages to gather data, but then I moved that pivot control item off to its own page that still calls other pages to collect data. Now when I run the application I get an error.

Basically it was working when I had it inside the original Pivot control. Once I moved it to a separate page (pivot page calles it) then I started to get this error:

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

No matter what page I hit always the second item in the list displays the error.

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

I found something online about a RootVisual but I'm not sure if that is what I looking at or not. Does anyone have any ideas?

1

There are 1 answers

1
Derek Lakin On BEST ANSWER

The ArgumentNullException is being thrown because the value that you are trying to set for the Text property is null, which you cannot do; the Text property is not a nullable type.

Without knowing how and when these application-level properties are being set it's difficult to provide a good explanation of why the behavior is different since your refactor, but you could either:

  • Put a null check in the code that accesses these application-level properties.
  • Initialise the application-level properties to string.Empty in the application constructor.