Как передать значения между двумя страницами в WPF

какова наилучшая практика передачи значений между страницы в WPF?

спасибо

4 ответов


ваша фиксированная точка отсчета-это объект приложения. Вы можете хранить вещи в коллекции свойства:

 string myText = (string)Application.Current.Properties["test"];

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


вероятно, через модель в архитектура MVVM.


пример переменной name = DeptName

объявите переменную в приложении.код XAML т. е.

public string DeptName { get; set; }

присвоить значение на странице-1

(App.Current as App).DeptName = "test";

затем вызовите значение на своей странице-2

 string selected_dept = (App.Current as App).DeptName;

то же, что и Windows Forms:

Не используйте только глобальные переменные или элементы управления страницы доступа с другой страницы. если у вас есть две страницы, которые делят один и тот же объект, например,Student, есть такой метод, как SetStudent(Student student) на Вашей странице или используйте свойство, чтобы одна страница могла передать объект Student с помощью этого метода. Вы также можете получить, конечно, если это необходимо.