Eins vorweg: Habe bis jetzt immer mit WindowsForms gearbeitet, daher bin ich noch sehr unerfahren mit WPF.
Durch Recherche habe ich es jetzt hinbekommen ein DataGrid zellenweise auszulesen und zeilenweise zu befüllen. Jetzt wollte ich schauen wie ich eine Zelle per "CodeBehind" ändern kann. Beim DataGridView bei WindowsForms geht das recht einfach. Hier greife ich wie bei einem Array auf Zeilen, Spalten und Zellen zu. Bei WCF habe ich bis jetzt nur folgende umständliche Methode gefunden. Die funktioniert, aber: Geht das auch einfacher?
Hier ein Beispiel bei dem der Saldo für einen Kunden aktualisieren wird. Der Einfachheit halber besteht die Tabelle jetzt nur aus 2 Spalten. In Wirklichkeit ist das natürlich vollkommen anders. Soll ja nur ein Beispiel sein. In der XAML-Datei ist das Bindung auch entsprechend : Binding="{Binding Path=Kunde}" und Binding="{Binding Path=Saldo}"
public void SaldoAnpassen()
{
DataGridRow DGR = (DataGridRow)DG.ItemContainerGenerator.ContainerFromIndex(0);
DataGridCell RowColumn = DG.Columns[0].GetCellContent(DGR).Parent as DataGridCell;
String Firmenkunde = ((TextBlock)RowColumn.Content).Text;
var data = new TabellenStruktur { Kunde = Firmenkunde , Saldo = "Mein neuer Saldo" };
MeinDataGrid.Items[0] = data;
}
public class TabellenStruktur
{
public Kunde {get; set;}
public Saldo {get; set;}
}