private static object CoerceValue(DependencyObject element, object baseValue) { NumericUpDownInt control = (NumericUpDownInt)element; int value = (int)baseValue; control.CoerceValueToBounds(ref value); // Get the text representation of Value string valueString = value.ToString(control.m_culture); if (control.IsThousandSeparatorVisible) { if (control.m_text_box != null) { control.m_text_box.Text = value.ToString("N", control.m_culture); } } else { if (control.m_text_box != null) { control.m_text_box.Text = value.ToString(); } } return(baseValue); }
private static void OnMajorDeltaChanged(DependencyObject element, DependencyPropertyChangedEventArgs e) { NumericUpDownInt control = (NumericUpDownInt)element; int majorDelta = (int)e.NewValue; if (majorDelta < control.MinorDelta) { control.MinorDelta = majorDelta; } }
private static void OnValueChanged(DependencyObject element, DependencyPropertyChangedEventArgs e) { NumericUpDownInt control = (NumericUpDownInt)element; if (control.m_text_box != null) { control.m_text_box.UndoLimit = 0; control.m_text_box.UndoLimit = 1; } }
private static void OnMinValueChanged(DependencyObject element, DependencyPropertyChangedEventArgs e) { NumericUpDownInt control = (NumericUpDownInt)element; int min_value = (int)e.NewValue; // If minValue steps over MaxValue, shift it if (min_value > (int)control.MaxValue) { control.MaxValue = min_value; } if (min_value > (int)control.Value) { control.Value = min_value; } }
private static void OnMaxValueChanged(DependencyObject element, DependencyPropertyChangedEventArgs e) { NumericUpDownInt control = (NumericUpDownInt)element; int max_value = (int)e.NewValue; // If maxValue steps over MinValue, shift it if (max_value < (int)control.MinValue) { control.MinValue = max_value; } // max limit of the value if (max_value <= (int)control.Value) { control.Value = max_value; } }