Ничего себе, я пошел делать это вчера и застрял с DataGrid, который добавит новую строку для моей ObservableCollection.После исследования я понял почему.Струны и неизменяемые.
Я нашел этот вопрос, и, к сожалению, у него не было ответа.Поэтому я не могу оставить этот ответ пустым.
Итак, вот ответы, которые я нашел:
DataGrid не может обновить коллекцию строк путем добавления, редактирования илиудаление строк.
Я нашел обходной путь для переноса строки в объект StringWrapper.Вот оно.
открытый класс StringWrapper {открытая строка Text {get;задавать;}}
Мне не понравился ни один из ответов.
Исходный вопросник, moncadad, выглядит так, как будто он хочет DataGrid с одним столбцом.Он, вероятно, просто хочет добавить и удалить строки из ObservableCollection без большого количества кода.Редактирование, вероятно, не слишком важно, поскольку это можно сделать, удалив и добавив снова.
Я закончил делать это сам с помощью многократно используемого пользовательского элемента управления, названного StringListBox.
ListBoxдля строк, поддерживающих добавление и удаление
По сути, идея состоит в том, чтобы создать вид DataGrid с меткой, ListBox, TextBox и кнопкой Add, и, поскольку это элемент управления, он долженработать с ObservableObject или List в одном элементе управления.
Это дает вам Добавить и Удалить.Я не предоставляю правку.
Надеюсь, это поможет следующему парню.