Добавление новой строки в DataGrid через List<>

188
31 мая 2019, 23:20

Всем доброго времени суток.

Прошу помочь разобраться.

На форме WPF есть DataGrid добавляю в нее новую строку через кнопку следующим образом:

private void AddTask_Click(object sender, RoutedEventArgs e)
{
    List<GridСustoms> customs = new List<GridСustoms>
    {
        new GridСustoms 
        {
            Title = TitleText.Text,
            Description = DescriptionText.Text,
            Priority = PriorityText.Text, 
            Status = StatusText.Text,
            CreationDate = CreationD.Text, 
            ExpirationDate = ExpirationD.Text 
        }
    };
    GridСustomsXAML.ItemsSource = customs;
    Close();
}

Таким образом у меня успешно создается новая строка на форме, но когда я хочу создать еще одну строку, то первая строка подменяется вновь созданной.

Прошу помочь разобраться как мне сделать добавление новых строк ?

Answer 1

Вы все время перезатираете customs, создавая новый список через new List<GridСustoms>, попробуйте так:

public ObservableCollection<GridСustoms> customs = new ObservableCollection<GridСustoms>();
private void AddTask_Click(object sender, RoutedEventArgs e)
{
    customs.Add(
        new GridСustoms 
        {
            Title = TitleText.Text,
            Description = DescriptionText.Text,
            Priority = PriorityText.Text, 
            Status = StatusText.Text,
            CreationDate = CreationD.Text, 
            ExpirationDate = ExpirationD.Text 
        }
    );
    Close();
}

Свойство GridСustomsXAML.ItemsSource = customs; нужно прописать на этапе инициализации, дабы не словить NullReferenceException при добавлении в коллекцию.

READ ALSO
Ближайшее значение List&lt;DateTime&gt; через LINQ

Ближайшее значение List<DateTime> через LINQ

прошу помочь составить Linq запрос

199
Неясное поведение атрибута OptionalAttribute

Неясное поведение атрибута OptionalAttribute

Для начала приведу простой пример кода:

209
FileStream и метод Seek

FileStream и метод Seek

Как при помощи метода FileStreamSeek считать часть массива байт от всего массива?

147
Переходы между уровней

Переходы между уровней

Всем привет, наверно я уже надоел) задаю и задаю вопросыЯ и не знаю как правильно задать этот вопрос

198