ürünümde DataGrid
ürününe ilişkin öğeler bulunmaktadır. DataTable
, CSV
dosyasından doldurulur. Kullanıcının yeni satırlar eklemesine izin veriyorum ancak DataTable
'u nasıl güncelleyeceğinden emin değilim, ardından CSV
'u güncellemek için bunu kullanıyorum.DataGrid ÖğeleriSource to CSV'ye Güncelleştirilebilen
Başlamak için DataGrid
'un kendisinde RowEditEnding
olayını kullanmam gerektiğini düşünüyorum. Denediğim şey bu;
private void OnRowEditEnding(object sender, DataGridRowEditEndingEventArgs e)
{
var dataTable = new DataTable();
var itemsSource = subbieDataGrid.ItemsSource as IEnumerable;
foreach (var item in subbieDataGrid.Items)
{
dataTable.Rows.Add(item);
}
CommonEngine.DataTableToCsv(dataTable, @"C:\Users\dand\Desktop\Subcontractors.csv", ',');
}
Ancak, burada yaptığım şeyle ilgili iki sorunum var. Öncelikle dizinin DataTable
'dan daha uzun olduğunu söyleyen bir hata atılınca işe yaramıyor. İkincisi
, bunu tamamen yeni DataTable
oluşturup orijinal öğeler artı orijinal DataTable
kullanmak sadece yeni öğe eklemek ve kullanma CSV
dosyayı güncelleştirmek ne zaman kendisine yenisini eklemek verimsiz olduğunu düşünüyorum DataTable
. Ancak, bunun nasıl yapılacağından emin değilim.