private void LoadEntry(DataGridView dgData, ICollection <SavePreview> list, SavePreview sav) { list.Add(sav); int count = list.Count; if (CB_FilterColumn.SelectedIndex != 0) { ToggleRowVisibility(dgData, CB_FilterColumn.SelectedIndex - 1, TB_FilterTextContains.Text, count - 1); } }
private void LoadEntry(DataGridView dgData, ICollection <SavePreview> list, SavePreview sav) { dgData.SuspendLayout(); list.Add(sav); int count = list.Count; if (CB_FilterColumn.SelectedIndex != 0) { ToggleRowVisibility(dgData, CB_FilterColumn.SelectedIndex - 1, TB_FilterTextContains.Text, count - 1); } dgData.AutoResizeColumns(); dgData.ResumeLayout(); }
private SaveList <SavePreview> PopulateData(DataGridView dgData, IEnumerable <SaveFile> saves) { var list = new SaveList <SavePreview>(); var enumerator = saves.GetEnumerator(); while (enumerator.Current == null) { if (!enumerator.MoveNext()) { return(list); } } var first = enumerator.Current; var sav1 = new SavePreview(first, GetParentFolderName(first)); LoadEntryInitial(dgData, list, sav1); int ctr = 1; // refresh every 7 until 15+ are loaded Task.Run(async() => // load the rest async { while (!dgData.IsHandleCreated) { await Task.Delay(15).ConfigureAwait(false); } while (enumerator.MoveNext()) { var next = enumerator.Current; if (next == null) { continue; } var sav = new SavePreview(next, GetParentFolderName(next)); dgData.Invoke(new Action(() => LoadEntry(dgData, list, sav))); ctr++; if (ctr < 15 && ctr % 7 == 0) { dgData.Invoke(new Action(() => Refresh(dgData))); } } dgData.Invoke(new Action(() => Refresh(dgData))); enumerator.Dispose(); }); return(list); }
private static void LoadEntryInitial(DataGridView dgData, SaveList <SavePreview> list, SavePreview sav) { list.Add(sav); dgData.DataSource = list; dgData.AutoGenerateColumns = true; for (int i = 0; i < dgData.Columns.Count; i++) { dgData.Columns[i].SortMode = DataGridViewColumnSortMode.Automatic; } dgData.AutoResizeColumns(); // Trigger Resizing }