Я думаю, что моя проблема довольно проста, но я не могу найти решение. У меня есть приложение с несколькими возможными видами (User Controls). В HomeView-UserControl Создаю ObservableCollection.WPF: доступ ObservableCollection из разных UserControls
HomeView.xaml.cs:
private ObservableCollection<Food> _foodList = new ObservableCollection<Food>();
public ObservableCollection<Food> FoodList
{
get { return _foodList; }
set { _foodList = value; }
}
мне нужно открыть ObservableCollection из моей статистики-UserControl (и других тоже).
Я пробовал много разных подходов líke Команды, сложные DataBinding, создавая ObservableCollection в MainWindow и т. Д., Но я не получил его для работы.
Вы следуете за шаблоном MVVM? Если это так, ваше представление не должно содержать частей модели (просто взгляды на нее), это должно быть в вашей модели просмотра, которая может быть предоставлена с несколькими видами при необходимости ... –
Спасибо, это уже помогло мне. Но что, если я редактирую некоторые поля (например, Observable Collection) в HomeViewModel и хочу, чтобы эти изменения сохранялись, пока я нахожусь в моем SecondView? –
Вы должны иметь возможность передавать данные состояния (данные модели) между представлениями, используя методы, которые вы вызываете для изменения представлений в модели представления. Например, вы можете добавлять параметры во вторую модель представления, которые берут данные из первого представления и проходят в коллекции. Не уверен, что это ясно или нет ... –