private void ResetForm() { _selectedPredefinedCondition = null; TextBoxCaption.Text = string.Empty; TextBoxCondition.Text = string.Empty; CheckBoxIsNeedEdit.Checked = false; CheckComboBoxDbTypes.ClearCheckedItems(); }
public void LoadUserConditions(IQueryView queryView) { ListBoxConditions.Items.Clear(); _selectedPredefinedCondition = null; if (_queryView == null) { _queryView = queryView; } if (_queryView == null) { return; } foreach (var expression in _queryView.UserPredefinedConditions) { ListBoxConditions.Items.Add(new UserConditionVisualItem(expression)); } }
private void UpdateForm() { var enable = ListBoxConditions.SelectedItem is UserConditionVisualItem; buttonCopy.Enabled = enable; buttonDelete.Enabled = enable; buttonMoveUp.Enabled = enable; buttonMoveDown.Enabled = enable; for (var i = 0; i < CheckComboBoxDbTypes.Items.Count; i++) { CheckComboBoxDbTypes.SetItemChecked(i, false); } if (!enable) { return; } _selectedPredefinedCondition = (UserConditionVisualItem)ListBoxConditions.SelectedItem; if (_selectedPredefinedCondition == null) { return; } TextBoxCaption.Text = _selectedPredefinedCondition.Caption; TextBoxCondition.Text = _selectedPredefinedCondition.Condition; CheckBoxIsNeedEdit.Checked = _selectedPredefinedCondition.IsNeedEdit; foreach (var item in _selectedPredefinedCondition.ShowOnlyForDbTypes.Select(type => CheckComboBoxDbTypes.Items .OfType <DbType>().First(x => x == type))) { CheckComboBoxDbTypes.SetItemChecked(CheckComboBoxDbTypes.Items.OfType <DbType>().ToList().IndexOf(item), true); } buttonSave.Enabled = false; }
private void buttonCopy_Click(object sender, EventArgs e) { _selectedPredefinedCondition = ListBoxConditions.SelectedItem as UserConditionVisualItem; if (_selectedPredefinedCondition == null) { return; } var name = _selectedPredefinedCondition.Caption; var newName = ""; if (ListBoxConditions.Items.OfType <UserConditionVisualItem>().All(x => string.Compare(x.Caption, $"{name} Copy", StringComparison.InvariantCultureIgnoreCase) != 0)) { newName = $"{name} Copy"; } else { for (var i = 1; i < 1000; i++) { if (ListBoxConditions.Items.OfType <UserConditionVisualItem>().Any(x => string.Compare(x.Caption, $"{name} Copy ({i})", StringComparison.InvariantCultureIgnoreCase) == 0)) { continue; } newName = $"{name} Copy ({i})"; break; } } var newCopy = _selectedPredefinedCondition.Copy(newName); var index = ListBoxConditions.Items.IndexOf(_selectedPredefinedCondition); _queryView.UserPredefinedConditions.Insert(index + 1, newCopy.PredefinedCondition); LoadUserConditions(null); ListBoxConditions.SelectedIndex = index + 1; }