Benutzer mit den meisten Antworten
Datagrid erkennt keine Änderungen im RowDetailsTemplate

Frage
-
Hallo,
ich habe eine Datagrid. Welches Personendaten anzeigen soll. Wenn ich auf eine Zeile klicke möchte ich im RowDetail auch Daten bearbeiten. Mein Problem ist. Wenn ich Daten nur in den Feldern im Rowdetail ändere wird es nicht gespeichert. Wenn ich aber in Datagridcolumn ändere speichert er auch die Änderungen die im Rowdetail waren. Muss ich in den Rowdetails irgendetwas noch eintragen das gekennzeichnet wird hier gab es eine Änderung?
<DataGrid x:Name="dgPers" Margin="10,10,10,10" Grid.Row="1" AutoGenerateColumns="False" CanUserAddRows="True" CanUserDeleteRows="True"> <DataGrid.Columns> <DataGridTextColumn Binding="{Binding PNr}" Header="PNr"/> <DataGridTextColumn Binding="{Binding Name}" Header="Name"/> <DataGridTextColumn Binding="{Binding Stadt}" Header="Stadt"/> </DataGrid.Columns> <DataGrid.RowDetailsTemplate> <DataTemplate> <Border Margin="5" Padding="3" BorderBrush="Blue" BorderThickness="3" CornerRadius="5"> <Grid> <Grid.RowDefinitions> <RowDefinition/> <RowDefinition/> </Grid.RowDefinitions> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/> </Grid.ColumnDefinitions> <TextBlock Text="Details:" Margin="10,10,10,10" FontWeight="Bold" Grid.Column="0" Grid.Row="0"/> <TextBlock Text="Bemerkung:" Margin="10,10,10,10" Grid.Column="0" Grid.Row="2"/> <TextBox Text="{Binding Bem}" Margin="10,10,10,10" Grid.Column="1" Grid.Row="2"/> </Grid> </Border> </DataTemplate> </DataGrid.RowDetailsTemplate> </DataGrid>
private void bSave_Click(object sender, RoutedEventArgs e) { int retVal; retVal = PersDB.SaveChanges(); lUpdate.Content = retVal + " wurden aktualisiert!"; }
Antworten
-
hab es wieder gefunden =) wusste das ich es mal gelesen habe =)
<TextBox Text="{Binding Bem,UpdateSourceTrigger=PropertyChanged}" Margin="10,10,10,10" Grid.Column="1" Grid.Row="2"/>
- Als Antwort markiert MietzeTatze Donnerstag, 20. Oktober 2016 14:08
Alle Antworten
-
Hi,
Änderungen in der TextBox im RowDetailsTemplate funktionieren nur, wenn der betreffende Datensatz editiert wurde, d.h., wenn sich eine der Zellen (außerhalb des RowDetailsTemplate) im Edit-Modus befunden hat. ohne dass ein Datensatzwechsel durchgeführt wurde. Wie man das in Deinem konkreten Fall umsetzen kann, kann ich nicht sagen.--
Viele Grüsse
Peter Fleischer (MVP Reconnect, Partner)
Meine Homepage mit Tipps und Tricks- Als Antwort vorgeschlagen Dimitar DenkovMicrosoft contingent staff, Administrator Mittwoch, 19. Oktober 2016 08:05
-
hab es wieder gefunden =) wusste das ich es mal gelesen habe =)
<TextBox Text="{Binding Bem,UpdateSourceTrigger=PropertyChanged}" Margin="10,10,10,10" Grid.Column="1" Grid.Row="2"/>
- Als Antwort markiert MietzeTatze Donnerstag, 20. Oktober 2016 14:08