Как сохранить переменную в Windows Phone - PullRequest
0 голосов
/ 20 января 2012

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

static XmlJokeRepository()
    {
        XDocument loadedData = XDocument.Load("FactsXML.xml");

        var data = from query in loadedData.Descendants("Joke")
                   select new Jokes
                   {
                       ID = (int)query.Element("ID"),
                       Rate = (int)query.Element("Rate"),
                       Info = (string)query.Element("Info"),

                   };
        countryList = data.ToList();
    }

    public IList<Jokes> GetCountryList()
    {

        return countryList;
    }


    public Jokes GetCountryById(int id)
    {

        return countryList.FirstOrDefault(c => c.ID == id);
    }

Где у меня есть класс, который поддерживает свойства и хранится в классе с именем Jokes.

  public class Jokes
{

    public int Rate
    {
        get;
        set;
    }
    public int ID
    {
        get;
        set;
    }

    public string Info
    {
        get;
        set;
    }
  }
}


  interface JokeRepository
 {
     IList<Jokes> GetCountryList();
     Jokes GetCountryById(int id);
  }

где я вызываю и загружаю этот XML и т. Д. На главной странице, используя эту InitializeComponent (); JokeRepository countryRepository = new XmlJokeRepository (); DataContext = countryRepository.GetCountryById (1);

Но для того, чтобы это работало, мне нужно указать, какой из них я хочу отобразить, вместо того, чтобы просто возвращать список и управлять им оттуда, например, если пользователь нажимает кнопку Далее, чтобы получить следующую шутку или что-то. Я ищу более общий способ сделать это и получить следующую шутку, которую я хочу, например, сформировать список и выполнить простой GetNext ().

Кроме того, в XML у меня просто есть Шутка Связывания в текстовом блоке. Спасибо за помощь.

1 Ответ

0 голосов
/ 14 мая 2012

не лучше ли загрузить данные в код запуска вашего приложения (в App.cs) один раз, а затем просто получить доступ к Current Joke или вызвать метод для установки CurrentJoke для NextOne ()?

Затем вы можете использовать событие OnNavigatedTo () для циклического анекдота.

Дайте мне знать, если вам нужен пример кода, который я здесь описываю.

...