Проблема: я хочу, чтобы DataGrid/RadGridView был настраиваемым (где пользователь может добавлять новую строку, удалять строку и редактировать данные), и при нажатии кнопки «Сохранить» все должно быть сохранено в базе данных. У меня есть ситуация, когда мне нужно создать пустой DataTable с разными столбцами (в зависимости от ввода пользователя). Затем введите значения в эти столбцы, а затем нажмите «Сохранить», чтобы сохранить значение в базе данных. Я могу привязать DataTable к DataGrid (я могу видеть все имена столбцов и строки данных, если в DataTable уже есть некоторые данные в сетке), но НЕ могу добавлять (вводить) или удалять любую строку во время выполнения из DataGrid . Я установил значение «True» для CanUserDeleteRows и CanUserInsertRows. Я не уверен, где я ошибаюсь. Я реализую INotifyPropertyChanged в своем классе ViewModel.
Я изо всех сил пытаюсь получить желаемый результат.
Мой код выглядит следующим образом:
ViewModel--
Код: Выделить всё
DataTable _manualDataTable;
public DataTable ManualDataTable
{
get
{
return _manualDataTable;
}
set
{
_manualDataTable = value;
OnPropertyChanged("ManualDataTable");
}
}
Код: Выделить всё
void LoadManualDataTable()
{
DataTable dtData = new DataTable();
dtData.Columns.Add("TimeStamp", typeof(DateTime));
List columns = new List();
var query = _dataContext.GetSenData().Where(sen => sen.LogID == ((DataLogs)SelectedItemNode).Logger.LogID).Select(sen => sen.SeriesID);
var queryTS = _dataContext.GetDataSeries().Where(ts => query.Contains(ts.SeriesID));
foreach (DataSeries ts in queryTS)
{
var queryPLoc = _dataContext.GetDataLoc().Where(pLoc => pLoc.ParamID == ts.ParamID).Select(pLoc => pLoc.Name);
dtData.Columns.Add(queryPLoc.First(), typeof(string));
}
ManualDataTable = dtData;
}
Код: Выделить всё
Любая помощь будет высоко оценена.
Заранее спасибо!
Подробнее здесь: https://stackoverflow.com/questions/928 ... n-wpf-mvvm