WPF - Использование привязки данных для привязки списка элементов и текстовых полей деталей

Я пытаюсь настроить привязку данных, как описано в заголовке.

Проблема, с которой я столкнулся, связана с общим списком.

Есть какие-то примеры.

Я не могу использовать BindingListCollectionView в общем списке, поэтому мне нужно использовать CollectionView.

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

Я знаю, что это базовый вариант, но как с этим справиться обычно?

Малькольм

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
0
3 583
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я вижу здесь два вопроса и постараюсь ответить на них поэтапно.

Привязка списка элементов с подробным просмотром

Учитывая эти классы 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 действителен, чтобы добавить его в список.

Другие вопросы по теме