Как выбрать, какая страница запускается первой в Windows Phone 8

1

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

Это код для моего reverseCoordinates, и он находится на моей главной странице.xaml.cs

public static string City;

public void reverseGeocode_QueryCompleted(object sender, QueryCompletedEventArgs<IList<MapLocation>> e)
{
    MapAddress geoAddress = e.Result[0].Information.Address;
    City = geoAddress.City;
    txtStad.Text = City;
}

В моем MainViewModel (где мне нужно включить мой город), код, который я использую,

   string City = WeatherApp1.MainPage.City;

Теперь проблема в том, что когда я отлаживаю, я вижу, что интерпретатор сначала использует мою mainviewmodel, но затем, когда я использую свой код, у City было значение null, потому что оно еще не было сделано на Mainpage.xaml.cs. Есть ли что-нибудь, что я могу сделать, чтобы исправить это?

  • 0
    как насчет того, где вы можете выбрать пользователя для выбора города, установите для него значение по умолчанию (т. е. если они заполняют текстовое поле, в нем уже есть «Лондон»).
Теги:
xaml
interpreter
geocode
windows-phone-8

2 ответа

0

Вы должны убедиться, что, когда метод, который использует значение City, выполняется только тогда, когда он имеет значение. Другим решением было бы определить значение по умолчанию. Вы можете использовать оператора:

string City = WeatherApp1.MainPage.City ?? "London";

Как это работает? Когда WeatherApp1.MainPage.City имеет значение null, то? поставит Сити в Лондон.

Также ознакомьтесь с этой статьей о том, как передавать значения между страницами: http://www.geekchamp.com/tips/how-to-pass-data-between-pages-in-windows-phone-alternatives

0

Что вам нужно сделать, так это открыть WMAppManifest.xml и изменить значение навигационной страницы на WMAppManifest.xml вам страницу. например. Page1.xaml

Изображение 174551

Ещё вопросы

Сообщество Overcoder
Наверх
Меню