public void DeleteRow(int rowIndex) { if (IsFiltered) { throw new InvalidOperationException("DeleteRow not possible while data is filtered"); } originalData.DeleteRow(rowIndex); }
private void DeleteRows(List <int> rows) { rows.Sort(); rows.Reverse(); preprocessingData.InTransaction(() => { foreach (int row in rows) { preprocessingData.DeleteRow(row); } }); }
public void SetFilter(bool[] rowFilters) { filteredData = (ITransactionalPreprocessingData)originalData.Clone(); filteredData.InTransaction(() => { for (int row = (rowFilters.Length - 1); row >= 0; --row) { if (rowFilters[row]) { filteredData.DeleteRow(row); } } }); OnFilterChanged(); }