private string ExtractText(ComboBoxTemplate selectedOption) { string jsonString = ""; var readerType = (ReaderType)selectedOption.Value; var sourceTextReader = SourceReaderFactory.GetAppropriateReader(readerType); switch (selectedOption.Value) { case 3 when !string.IsNullOrEmpty(txtFileName.Text): jsonString = sourceTextReader.GetTextFromSource(txtFileName.Text); break; case 2 when dgTexts.SelectedItem != null: { var selectedDataGriItem = dgTexts.SelectedItem as SavedText; jsonString = _savedTextRepository.GetById(selectedDataGriItem.Id).TextValue; break; } case 1 when !string.IsNullOrEmpty(txtUserInput.Text): jsonString = txtUserInput.Text; break; } return(jsonString); }
public void ApplyTemplate(ComboBoxTemplate template) { if (null == template) { throw new ArgumentNullException(nameof(template)); } BeginUpdate(); Items.Clear(); DropDownStyle = ComboBoxStyle.DropDownList; var index = 0; var selectedIndex = -1; foreach (var itemTemplate in template.Items) { if (itemTemplate.Selected) { selectedIndex = index; } var comboBoxItem = new ComboBoxItem(itemTemplate.Text, itemTemplate.Value); Items.Add(comboBoxItem); index++; } if (-1 != selectedIndex) { SelectedIndex = selectedIndex; } else { if (Items.Count > 0) { SelectedIndex = 0; } } EndUpdate(); }
public virtual object ReadJson(JToken jToken, JsonSerializer serializer) { if (null == jToken) { throw new ArgumentNullException(nameof(jToken)); } if (null == serializer) { throw new ArgumentNullException(nameof(serializer)); } var type = (string)jToken["type"]; ControlTemplate controlTemplate; switch (type) { case ControlType.TextBox: controlTemplate = new TextBoxTemplate(); break; case ControlType.ComboBox: controlTemplate = new ComboBoxTemplate(); break; case ControlType.NumericUpDown: controlTemplate = new NumericUpDownTemplate(); break; case ControlType.CheckBox: controlTemplate = new CheckBoxTemplate(); break; case ControlType.TextBoxWithButton: controlTemplate = new TextBoxWithButtonTemplate(); break; case ControlType.DateTimePicker: controlTemplate = new DateTimePickerTemplate(); break; case ControlType.Table: controlTemplate = new TableTemplate(); break; case ControlType.GroupBox: controlTemplate = new GroupBoxTemplate <ShapeColumnTemplate>(); break; default: throw new InvalidOperationException("type == " + type); } using (var innerReader = jToken.CreateReader()) { serializer.Populate(innerReader, controlTemplate); } return(controlTemplate); }