/// <summary> /// Event delegate method fired when the <see cref="ManageConnectionInfosDialog"/> is being closed. /// </summary> /// <param name="sender">Sender object.</param> /// <param name="e">Event arguments.</param> private void ManageConnectionInfosDialog_FormClosing(object sender, FormClosingEventArgs e) { if (DialogResult == DialogResult.Cancel) { return; } ConnectionInfosToDelete.Clear(); ConnectionInfosListView.Items.Cast <ListViewItem>().Where(item => item.Checked).ToList().ForEach(item => ConnectionInfosToDelete.Add(item.Tag as IConnectionInfo)); ConnectionInfosLastAccessDays = (int)SelectConnectionInfosNumericUpDown.Value; DeleteAutomaticallyOrphanedConnectionInfos = DeleteOrphanedInfosCheckBox.Checked; }
/// <summary> /// Updates the control values based on the dialog saved properties. /// </summary> private void UpdateControlValues() { if (ConnectionInfosToDelete != null) { foreach (ListViewItem listViewItem in ConnectionInfosListView.Items) { if (!(listViewItem.Tag is IConnectionInfo connectionInfo)) { continue; } listViewItem.Checked = ConnectionInfosToDelete.Any(ci => ci.Equals(connectionInfo)); } } SelectConnectionInfosNumericUpDown.Value = ConnectionInfosLastAccessDays; DeleteOrphanedInfosCheckBox.Checked = DeleteAutomaticallyOrphanedConnectionInfos; }