private static object CoerceValue(DependencyObject d, object basevalue) { SpinBox spinner = (SpinBox)d; double value = (double)basevalue; value = GetLimitedValue(spinner, value); return(value); }
static void OnMaximumChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { SpinBox spinner = (SpinBox)d; double value = (double)CoerceValue(d, spinner.Value); if (value != spinner.Value) { spinner.Value = value; } }
private static void OnValueChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { SpinBox spinner = (SpinBox)d; spinner.ValueToTextBoxText(); if (spinner.ValueChanged != null) { spinner.ValueChanged(spinner, new RoutedPropertyChangedEventArgs <double>((double)e.OldValue, (double)e.NewValue)); } }
static object CoerceMaximum(DependencyObject d, object basevalue) { SpinBox spinner = (SpinBox)d; double value = (double)basevalue; if (spinner.Minimum > value) { return(spinner.Minimum); } return(value); }
private static double GetLimitedValue(SpinBox spinner, double value) { value = Math.Max(spinner.Minimum, value); value = Math.Min(spinner.Maximum, value); return(value); }
static void OnFormatChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { SpinBox spinner = (SpinBox)d; spinner.ValueToTextBoxText(); }