Я пытаюсь настроить привязку данных, как описано в заголовке.
Проблема, с которой я столкнулся, связана с общим списком.
Есть какие-то примеры.
Я не могу использовать BindingListCollectionView в общем списке, поэтому мне нужно использовать CollectionView.
Проблема, о которой я озадачена, - это добавить новый элемент при нажатии кнопки Добавить я добавляю новый элемент в общий список и обновите View. Но если пользователь не следует по списку теперь пуст пункт.
Я знаю, что это базовый вариант, но как с этим справиться обычно?
Малькольм





Я вижу здесь два вопроса и постараюсь ответить на них поэтапно.
Учитывая эти классы ViewModel (представьте, что каждый реализует INotifyPRopertyChanged):
public class DataView {
public Item SelectedItem {get; set; }
public List<Item> Items { get; private set; }
}
public class Item {
public string Title { get; set; }
}
При помещении экземпляра Data в DataContext минимальный вид может выглядеть так:
<StackPanel>
<ListView Items = "{Binding Items}" SelectedItem = "{Binding SelectedItem}" />
<TextBox Text = "{Binding SelectedItem.SelectedItem.Title}" />
</StackPanel>
Чтобы иметь возможность создать новый Item без немедленного добавления его в список, вы можете захотеть выделить вновь созданный объект в его собственную область. Визуально вы можете разместить его в новом всплывающем окне или интегрировать в список, но на самом деле он будет добавлен только в список при попытке следующий добавить или подтвердить родительский диалог. На этом этапе вы также можете проверить, действительно ли Item действителен, чтобы добавить его в список.