if (newValue != null)
{
- instance.curValue = (float)newValue;
+ float value = (float)newValue;
+ if (value < instance.minValue)
+ {
+ instance.curValue = instance.minValue;
+ }
+ else if (value > instance.maxValue)
+ {
+ instance.curValue = instance.maxValue;
+ }
+ else
+ {
+ instance.curValue = value;
+ }
+
+ instance.sliderValueChangedHandler?.Invoke(instance, new SliderValueChangedEventArgs {
+ CurrentValue = instance.curValue
+ });
if (Accessibility.Accessibility.IsEnabled && instance.IsHighlighted)
{
instance.EmitAccessibilityEvent(AccessibilityPropertyChangeEvent.Value);
isPressed = true;
if (IsDiscrete)
{
- float value = CurrentValue - discreteValue;
- CurrentValue = value < MinValue ? MinValue : value;
+ float value = curValue - discreteValue;
+ CurrentValue = value;
}
else
{
CurrentValue -= 1;
}
- sliderValueChangedHandler?.Invoke(this, new SliderValueChangedEventArgs {
- CurrentValue = curValue
- });
}
return true; // Consumed
}
isPressed = true;
if (IsDiscrete)
{
- float value = CurrentValue + discreteValue;
- CurrentValue = value > MaxValue ? MaxValue : value;
+ float value = curValue + discreteValue;
+ CurrentValue = value;
}
else
{
CurrentValue += 1;
}
- sliderValueChangedHandler?.Invoke(this, new SliderValueChangedEventArgs {
- CurrentValue = curValue
- });
}
return true; // Consumed
}
if (current >= MinValue && current <= MaxValue)
{
CurrentValue = current;
- if (sliderValueChangedHandler != null)
- {
- sliderValueChangedHandler(this, new SliderValueChangedEventArgs { CurrentValue = current });
- }
return true;
}
{
this.CurrentValue = CalculateDiscreteValue(this.CurrentValue);
}
-
- if (sliderValueChangedHandler != null)
- {
- SliderValueChangedEventArgs args = new SliderValueChangedEventArgs();
- args.CurrentValue = this.CurrentValue;
- sliderValueChangedHandler(this, args);
- }
}
private bool OnTouchEventForTrack(object source, TouchEventArgs e)
if (this.FocusableInTouch == false && editMode == false)
{
- isFocused = false;
+ isFocused = false;
}
PointStateType state = e.Touch.GetState(0);
{
this.CurrentValue = CalculateDiscreteValue(this.CurrentValue);
}
-
- if (null != sliderValueChangedHandler)
- {
- SliderValueChangedEventArgs args = new SliderValueChangedEventArgs();
- args.CurrentValue = this.CurrentValue;
- sliderValueChangedHandler(this, args);
- }
}
}