WPF C# - jak edytować dane z poziomu nowego okna


(arlid) #1

Witajcie. Mam sobie ListView, w ktorym binduje dane z bazy danych. Chciałbym moc je edytowac poprzez wyświetlenie formularza do dycji. I mam pewien problem. Otóż nie ma problemu z pobraniem danych do formularza. Nie wiem, czy sposób jest do końca dobry, bo to pierwsze podejście, ale działa.

 

DataRow oDataRow = ((DataRowView)listItems.SelectedItem).Row;

Edit_KontrahentWindow1 noweokno = new Edit_KontrahentWindow1();

noweokno.Show();

noweokno.textBox_AddKontrahentWindows_Name.Text = oDataRow[1].ToString();

...

I tak całość ładnie ląduje we wskazanych TextBoxach z zaznaczonego wiersza. Jak teraz mogę po naciśnięciu przycisku zapisać poprawione dane do bazy?  Na sztywno to bym zrobił coś na zasadzie:

DataRow oDataRow = ((DataRowView)listItems.SelectedItem).Row;

oDataRow.BeginEdit();

oDataRow[1] = "Tekst";

.....

oDataRow.EndEdit();

Kombinowałem w taki sposób i działa, ale na sztywno. Nie mam jednak sposobu jak mogę przenieść lub zapisać te wartości. Jakieś sugestie, jak to zrobić? Myślałem o zwykłym Update, ale musiałbym wyciągnąć ID wiersza i nie wiem czy to do końca dobry pomysł. No chyba, że najlepszy :wink: