public UiEncodingLabeledWatermark(string label, string watermark, int width, TextChangedEventHandler onValueChanged) { ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto }); ColumnDefinitions.Add(new ColumnDefinition()); Margin = new Thickness(5); UiTextBlock labelControl = UiTextBlockFactory.Create(label); { labelControl.Margin = new Thickness(5, 5, 2, 5); labelControl.VerticalAlignment = VerticalAlignment.Center; AddUiElement(labelControl, 0, 0); } _textControl = UiWatermarkTextBoxFactory.Create(watermark); { _textControl.Width = width; _textControl.Margin = new Thickness(2, 5, 5, 5); _textControl.TextChanged += onValueChanged; AddUiElement(_textControl, 0, 1); } }
public UiInputWindow(string watermark, string text) { #region Construct SizeToContent = SizeToContent.WidthAndHeight; WindowStartupLocation = WindowStartupLocation.CenterScreen; WindowStyle = WindowStyle.None; UiGrid root = UiGridFactory.Create(1, 2); { root.ColumnDefinitions[1].Width = GridLength.Auto; _textBox = UiWatermarkTextBoxFactory.Create(watermark, text); { _textBox.Width = 320; _textBox.Margin = new Thickness(3); root.AddUiElement(_textBox, 0, 0); } UiButton button = UiButtonFactory.Create("OK"); { button.Width = 70; button.Margin = new Thickness(3); button.Click += OnOkButtonClick; root.AddUiElement(button, 0, 1); } } Content = root; #endregion }
public static UiWatermarkTextBox Create(string watermark, string text = null) { Exceptions.CheckArgumentNull(watermark, "watermark"); UiWatermarkTextBox textBlock = new UiWatermarkTextBox {Watermark = watermark, Text = text ?? string.Empty}; return textBlock; }
public static UiWatermarkTextBox Create(string watermark, string text = null) { Exceptions.CheckArgumentNull(watermark, "watermark"); UiWatermarkTextBox textBlock = new UiWatermarkTextBox { Watermark = watermark, Text = text ?? string.Empty }; return(textBlock); }
private void OnOutputTextChanged(object sender, TextChangedEventArgs e) { if (_source == null || _index < 0) { return; } UiWatermarkTextBox box = (UiWatermarkTextBox)sender; string text = box.Text; if (text != null && text.Length > 1) { box.Text = text[text.Length - 1].ToString(CultureInfo.CurrentCulture); box.CaretIndex = text.Length; return; } char ch = string.IsNullOrEmpty(text) ? '\0' : text[0]; _source.Chars[_littleIndex] = ch; }
public UiEncodingLabeledWatermark(string label, string watermark, int width, TextChangedEventHandler onValueChanged) { ColumnDefinitions.Add(new ColumnDefinition() {Width = GridLength.Auto}); ColumnDefinitions.Add(new ColumnDefinition()); Margin = new Thickness(5); UiTextBlock labelControl = UiTextBlockFactory.Create(label); { labelControl.Margin = new Thickness(5, 5, 2, 5); labelControl.VerticalAlignment = VerticalAlignment.Center; AddUiElement(labelControl, 0, 0); } _textControl = UiWatermarkTextBoxFactory.Create(watermark); { _textControl.Width = width; _textControl.Margin = new Thickness(2, 5, 5, 5); _textControl.TextChanged += onValueChanged; AddUiElement(_textControl, 0, 1); } }
private void OnInputTextChanged(object sender, TextChangedEventArgs e) { if (_source == null || _index < 0) { return; } foreach (char oldCh in _oldInputText) { _source.Codes.Remove(oldCh); } _oldInputText = string.Empty; UiWatermarkTextBox box = (UiWatermarkTextBox)sender; string text = box.Text ?? string.Empty; if (text.Length < 1) { return; } if (text.Length > 4) { box.Text = text.Remove(0, text.Length - 4); box.CaretIndex = text.Length; return; } foreach (char ch in text) { _source.Codes[ch] = (short)_littleIndex; } _oldInputText = text; }
public UiEncodingAdditionalCharacterControl() { Orientation = Orientation.Horizontal; VerticalAlignment = VerticalAlignment.Center; #region Construct _indexLabel = UiTextBlockFactory.Create("#"); { _indexLabel.Margin = new Thickness(5); _indexLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(_indexLabel); } UiTextBlock rowLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.Row); { rowLabel.Margin = new Thickness(5, 5, 2, 5); rowLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(rowLabel); } _rowNumber = UiIntegerUpDownFactory.Create(0, byte.MaxValue); { _rowNumber.Width = 50; _rowNumber.Margin = new Thickness(2, 5, 5, 5); _rowNumber.ValueChanged += OnRowValueChanged; Children.Add(_rowNumber); } UiTextBlock colLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.Column); { colLabel.Margin = new Thickness(5, 5, 2, 5); colLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(colLabel); } _colNumber = UiIntegerUpDownFactory.Create(0, byte.MaxValue); { _colNumber.Width = 50; _colNumber.Margin = new Thickness(2, 5, 5, 5); _colNumber.ValueChanged += OnColValueChanged; Children.Add(_colNumber); } UiTextBlock outputLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.ToText); { outputLabel.Margin = new Thickness(5, 5, 2, 5); outputLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(outputLabel); } _output = UiWatermarkTextBoxFactory.Create("0x31->\"1\""); { _output.Width = 60; _output.Margin = new Thickness(2, 5, 5, 5); _output.TextChanged += OnOutputTextChanged; Children.Add(_output); } UiTextBlock inputLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.FromText); { inputLabel.Margin = new Thickness(5, 5, 2, 5); inputLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(inputLabel); } _input = UiWatermarkTextBoxFactory.Create("0x31<-\"1\""); { _input.Width = 100; _input.Margin = new Thickness(2, 5, 5, 5); _input.TextChanged += OnInputTextChanged; Children.Add(_input); } #endregion }
public UiEncodingAdditionalCharacterControl() { Orientation = Orientation.Horizontal; VerticalAlignment = VerticalAlignment.Center; #region Construct _indexLabel = UiTextBlockFactory.Create("#"); { _indexLabel.Margin = new Thickness(5); _indexLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(_indexLabel); } UiTextBlock rowLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.Row); { rowLabel.Margin = new Thickness(5, 5, 2, 5); rowLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(rowLabel); } _rowNumber = UiIntegerUpDownFactory.Create(0, byte.MaxValue); { _rowNumber.Width = 50; _rowNumber.Margin = new Thickness(2, 5, 5, 5); _rowNumber.ValueChanged += OnRowValueChanged; Children.Add(_rowNumber); } UiTextBlock colLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.Column); { colLabel.Margin = new Thickness(5, 5, 2, 5); colLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(colLabel); } _colNumber = UiIntegerUpDownFactory.Create(0, byte.MaxValue); { _colNumber.Width = 50; _colNumber.Margin = new Thickness(2, 5, 5, 5); _colNumber.ValueChanged += OnColValueChanged; Children.Add(_colNumber); } UiTextBlock outputLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.ToText); { outputLabel.Margin = new Thickness(5, 5, 2, 5); outputLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(outputLabel); } _output = UiWatermarkTextBoxFactory.Create("0x31->\"1\""); { _output.Width = 60; _output.Margin = new Thickness(2, 5, 5, 5); _output.TextChanged += OnOutputTextChanged; Children.Add(_output); } UiTextBlock inputLabel = UiTextBlockFactory.Create(Lang.EncodingEditor.Extra.FromText); { inputLabel.Margin = new Thickness(5, 5, 2, 5); inputLabel.VerticalAlignment = VerticalAlignment.Center; Children.Add(inputLabel); } _input = UiWatermarkTextBoxFactory.Create("0x31<-\"1\""); { _input.Width = 100; _input.Margin = new Thickness(2, 5, 5, 5); _input.TextChanged += OnInputTextChanged; Children.Add(_input); } #endregion }