// Конструктор public DialogAddEditCity(string pathToPluginDir, List <Cities> сities, DirectoryEntry entry, FormModes.Mode mode, int editIndex = -1) { InitializeComponent(); _pathToPluginDir = pathToPluginDir; _mode = mode; _сities = сities; _ADSession = entry; _newCityToAdd = ""; _groups = new ObservableCollection <string>(); groups.ItemsSource = _groups; _haveSavedData = false; if (mode == FormModes.Mode.edit) { Title = "Редактирование города"; _editIndex = editIndex; _originalDataEditedCity = _сities[editIndex]; chCreateSeveralCities.Visibility = Visibility.Hidden; if (editIndex >= 0) { displayName.Text = _сities[editIndex].DisplayName; name.Text = _сities[editIndex].Name; adress.Text = _сities[editIndex].Adress; if (_сities[editIndex].Groups.Count > 0) { for (int i = 0; i < _сities[editIndex].Groups.Count; i++) { _groups.Add(_сities[editIndex].Groups[i]); } } } } }
// Конструктор public DialogAddEditTemplate(string pathToPluginDir, List <string> templates, DirectoryEntry entry, FormModes.Mode mode, int editIndex = -1) { InitializeComponent(); _pathToPluginDir = pathToPluginDir; _mode = mode; _templates = templates; _ADSession = entry; _newTemplateToAdd = ""; _groups = new ObservableCollection <string>(); groups.ItemsSource = _groups; _haveSavedData = false; if (mode == FormModes.Mode.edit) { Title = "Редактирование шаблона"; _editIndex = editIndex; chCreateMoreTemplates.Visibility = Visibility.Hidden; if (editIndex >= 0) { _originalNameEditedTemplate = templateName.Text = _templates[editIndex]; try { string dataFull = ""; using (StreamReader sr = new StreamReader(_pathToPluginDir + "\\templates\\" + _originalNameEditedTemplate + ".txt", Encoding.GetEncoding("windows-1251"))) { dataFull = sr.ReadToEnd(); string[] groupArr = dataFull.Split('\n'); for (int i = 0; i < groupArr.Length; i++) { if (!string.IsNullOrWhiteSpace(groupArr[i])) { _groups.Add(groupArr[i].TrimEnd('\r')); } } _originalGroupsEditedTemplate = _groups.ToList(); } } catch (Exception exp) { MessageBox.Show("Не удалось загрузить шаблон:\r\n" + exp.Message, "Ошибка", MessageBoxButton.OK, MessageBoxImage.Error); } } } }