public RowControl(FileFormat.PrintParameterModifier modifier) { Modifier = modifier; Name = new Label { Text = $"{modifier.Name}:", TextAlign = ContentAlignment.MiddleLeft, AutoSize = true, Dock = DockStyle.Fill, Tag = this, }; OldValue = new Label { Text = modifier.OldValue.ToString(CultureInfo.InvariantCulture), TextAlign = ContentAlignment.MiddleCenter, AutoSize = true, Dock = DockStyle.Fill, Tag = this }; NewValue = new NumericUpDown { DecimalPlaces = modifier.DecimalPlates, Minimum = modifier.Minimum, Maximum = modifier.Maximum, Value = modifier.OldValue.Clamp(modifier.Minimum, modifier.Maximum), Tag = this, Width = 100, Dock = DockStyle.Fill, //AutoSize = true }; NewValue.ValueChanged += NewValue_ValueChanged; Unit = new Label { Text = modifier.ValueUnit, TextAlign = ContentAlignment.MiddleLeft, AutoSize = true, Dock = DockStyle.Fill, Tag = this }; ResetButton = new Button { Image = Properties.Resources.undo_16x16, Dock = DockStyle.Fill, BackColor = Color.LightGray, Enabled = false, Visible = false, Tag = this }; ResetButton.Click += ResetButton_Clicked; }
public RowControl(FileFormat.PrintParameterModifier modifier) { Modifier = modifier; modifier.NewValue = modifier.OldValue.Clamp(modifier.Minimum, modifier.Maximum); Name = new TextBlock { Text = $"{modifier.Name}:", VerticalAlignment = VerticalAlignment.Center, Padding = new Thickness(15, 0), Tag = this, }; OldValue = new TextBlock { Text = modifier.OldValue.ToString(CultureInfo.InvariantCulture), VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, //Padding = new Thickness(15, 0), Tag = this }; NewValue = new NumericUpDown { //DecimalPlaces = modifier.DecimalPlates, VerticalAlignment = VerticalAlignment.Center, Minimum = (double)modifier.Minimum, Maximum = (double)modifier.Maximum, Increment = modifier.DecimalPlates == 0 ? 1 : 0.5, Value = (double)modifier.NewValue, Tag = this, Width = 100, }; if (modifier.DecimalPlates > 0) { NewValue.FormatString = "{0:0.00}"; } Unit = new TextBlock { Text = modifier.ValueUnit, VerticalAlignment = VerticalAlignment.Center, Padding = new Thickness(10, 0, 15, 0), Tag = this }; ResetButton = new Button { IsVisible = false, IsEnabled = false, VerticalAlignment = VerticalAlignment.Center, Tag = this, Padding = new Thickness(5), Content = new Image { Source = App.GetBitmapFromAsset("/Assets/Icons/undo-16x16.png") } }; ResetButton.Click += ResetButtonOnClick; NewValue.ValueChanged += NewValueOnValueChanged; }