Поделиться через


Сохранение одиночного элемента состояния экземпляров страницы

Обновлен: Ноябрь 2007

В этом примере показано сохранение отдельного элемента состояния страницы параллельно с экземплярами страницы с помощью свойства зависимостей.

В этом примере демонстрируется конкретная функциональная возможность Windows Presentation Foundation, и поэтому рекомендации по разработке приложений не соблюдаются. Более полное рассмотрение Windows Presentation Foundation (WPF) и рекомендации по тактике разработки приложений Microsoft .NET Framework см. в следующих разделах:

Специальные возможности: Рекомендации по специальным возможностям

Локализация: Общие сведения о глобализации и локализации WPF

Производительность: Улучшение производительности приложений WPF

Безопасность: Безопасность Windows Presentation Foundation

Download sample

Построение примера

  • Установите пакет средств разработки программного обеспечения для Windows и откройте окно командной строки среды его построения. В меню "Пуск" выделите пункты "Все программы", "Пакет SDK для Microsoft Windows", а затем "Оболочки CMD".

  • Загрузите образец, как правило из документации пакета SDK, на жесткий диск.

  • Чтобы построить образец из окна командной строки среды построения, перейдите в исходный каталог образца. В командной строке введите MSBUILD.

  • Чтобы построить образец в Microsoft Visual Studio, загрузите решение образца или файл проекта и нажмите сочетание клавиш CTRL + SHIFT + B.

Выполнение примера

  • Для запуска скомпилированного образца в окне командной строки среды построения, выполните EXE-файл в папке Bin\Debug или Bin\Release, содержащихся в папке кода источника образца.

  • Для запуска скомпилированного образца с помощью отладки в Visual Studio, нажмите клавишу F5.

Примечания

По умолчанию WPF (Windows Presentation Foundation) не сохраняет экземпляры страницы в журнале переходов. Вместо этого каждый раз при переходе на страницу создается ее новый экземпляр. В WPF имеется возможность сохранения экземпляров страницы в журнале переходов, хотя это может быть дорогостоящим с точки зрения потребления памяти.

Однако WPF обеспечивает инфраструктуру, позволяющую сохранять сведения о состоянии с записью страницы в журнале переходов. В этом случае можно использовать хранимые состояния для воссоздания состояния страницы после ее создания.

В этом примере показано использование заносимого в журнал свойства зависимостей для хранения и извлечения состояния страницы с помощью журнала переходов. Свойство зависимостей для занесения в журнал содержит следующие метаданные:

Journal

Этот метод особенно полезен, если необходимо хранить единственный элемент состояния страницы. Для сохранения одного набора состояний экземпляров страницы следует рассмотреть возможность использования IProvideCustomContentState (см. раздел Сохранение одного набора экземпляров состояний страниц). О сохранении нескольких наборов состояний для одного экземпляра страницы см. в разделе Хранение нескольких множеств состояний для одного экземпляра страницы.

Aa972173.alert_caution(ru-ru,VS.90).gifВажное примечание.

При сохранении данных в пользовательском состоянии содержимого нельзя сохранять ссылки на экземпляр страницы, для которого запоминается состояние. Сохранение такой ссылки не позволяет WPF освободить экземпляр страницы, и не согласуется со стандартным поведением журнала переходов. Если это сделать необходимо, воспользуйтесь методом KeepAlive.

См. также

Задачи

Сохранение одного набора экземпляров состояний страниц

Хранение нескольких множеств состояний для одного экземпляра страницы