public void Bind( [NotNull] QualityVerification qualityVerification, [NotNull] Predicate <QualityConditionVerification> includeConditionVerification) { double maximumTime; SortableBindingList <VerifiedDatasetItem> bindingList = GetVerifiedDatasetItems(qualityVerification, includeConditionVerification, out maximumTime); _dataGridView.SuspendLayout(); try { _columnFullTime.MaximumTime = maximumTime; _latch.RunInsideLatch(() => { DataGridViewSortState sortState = GetSortState(); _gridHandler.BindTo(bindingList); RestoreSortState(sortState); }); } finally { _dataGridView.ResumeLayout(); } OnSelectionChanged(); }
public void Bind( [NotNull] IEnumerable <QualityConditionVerification> conditionVerifications) { int maximumIssueCount; SortableBindingList <VerifiedConditionItem> bindingList = GetVerifiedConditionItems(conditionVerifications, out maximumIssueCount); _dataGridView.SuspendLayout(); try { _columnIssueCountBar.MaximumIssueCount = maximumIssueCount; _latch.RunInsideLatch(() => { DataGridViewSortState state = GetSortState(); _gridHandler.BindTo(bindingList); RestoreSortState(state); }); } finally { _dataGridView.ResumeLayout(); } OnSelectionChanged(); }
public void RestoreSortState([CanBeNull] DataGridViewSortState sortState) { if (sortState == null) { sortState = new DataGridViewSortState(_columnTestName.Name); } sortState.TryApplyState(_dataGridView); }
private void ApplyState([CanBeNull] FinderFormState state, [CanBeNull] ContextSpecificSettings contextSpecificSettings, bool skipSorting = false) { if (state == null) { _dataGridViewFindToolStrip.FilterRows = true; if (!skipSorting) { ApplyDefaultSortOrder(); } return; } _dataGridViewFindToolStrip.FilterRows = state.FilterRows; _dataGridViewFindToolStrip.MatchCase = state.MatchCase; if (!skipSorting) { // try to restore the saved grid sort state DataGridViewSortState sortState = state.DataGridViewSortState; if (sortState == null || !sortState.TryApplyState(_dataGridView)) { ApplyDefaultSortOrder(); } } if (state.FirstDisplayedScrollingRowIndex > 0) { DataGridViewUtils.TrySetFirstDisplayedScrollingRow( _dataGridView, state.FirstDisplayedScrollingRowIndex); } if (state.FirstDisplayedScrollingColumnIndex > 0) { DataGridViewUtils.TrySetFirstDisplayedScrollinColumn( _dataGridView, state.FirstDisplayedScrollingColumnIndex); } if (KeepFindTextBetweenCalls) { _dataGridViewFindToolStrip.FindText = GetRestoredFindText(state, contextSpecificSettings); } }