Anzeigen eines gelöschten DataRow in einem (Infragistics.Ultra-) grid
Frage
ist es möglich, eine DataRow aus einer Datentabelle angezeigt werden, die die DataRowState.Deleted hat?
Szenario: Der Benutzer kann eine Art von Lookup-Informationen bearbeiten, die im Raster dargestellt werden. Jetzt kann er / sie löschen, ändern oder mehrere Einträge einfügen und schließlich alle speichern ihren / seinen Änderungen mit einem Klick auf die Datenbank (vorausgesetzt, es gibt keine Primärschlüsselverletzung ist oder ein anderes Problem).
Jetzt möchte ich die verschiedenen Reihen kolorieren nach ihrer edit-Status, aber die gelöschten Zeilen verschwinden sofort.
Haben Sie eine Idee oder einen anderen Ansatz, um dieses Problem zu lösen?
Lösung
Edit: Ich erkannte, dass die Grid
Sie verwenden, ist nicht DataGridView
. Für alle, die das gleiche mit DataGridView
tun will, kann sie wie folgt vor:
-
Erstellen Sie eine
DataView
:DataView myDataView = new DataView(myDataTable, String.Empty, // add a filter if you need one "SortByColumn", DataViewRowState.OriginalRows | DataViewRowState.Deleted); myDataGridView.DataSource = myDataView;
-
Handle
UserAddedRow
,UserDeletedRow
undCellValueChanged
Veranstaltungen:private void myDataGridView_UserAddedRow (object sender, DataGridViewRowEventArgs e) { e.Row.DefaultCellStyle.BackColor = ColorTranslator.FromHtml("#CCFF99"); } private void myDataGridView_UserDeletedRow (object sender, DataGridViewRowEventArgs e) { e.Row.DefaultCellStyle.BackColor = ColorTranslator.FromHtml("#FFCC99"); } private void myDataGridView_CellValueChanged (object sender, DataGridViewCellEventArgs e) { myDataGridView[e.ColumnIndex, e.RowIndex].DefaultCellStyle.BackColor = ColorTranslator.FromHtml("#FFFF99"); }