MAUI - 如何防止滑块减少?

问题描述 投票:0回答:1

在我的 MAUI 应用程序中,我使用滑块来设置计时器。用户可以通过将滑块滑动到适当的位置来设置所需的时间。一旦计时器启动,我想防止用户减少设置的时间,直到计时器完成倒计时。这可确保计时器在用户最初设置的整个持续时间内不间断地运行。我如何在我的 MAUI 应用程序上执行此操作?

用户应该能够使用滑块增加计时器。限制只是减少计时器。

下面是XAML页面添加的Slider代码:

<Slider
    x:Name="watchme_slider"
    Grid.Column="1"
    BackgroundColor="White"
    MinimumTrackColor="#1c98d7"
    MaximumTrackColor="#9a9a9a"
    ThumbImageSource="ic_thumb_xx.png"
    ValueChanged="SliderValueChanged"
    Maximum="0.166666667"
    Minimum="0"
    HorizontalOptions="FillAndExpand"/>
slider maui
1个回答
0
投票

您可以为当前页面的视图模型创建一个属性(例如

public bool InputTransparent
)并为其实现接口
INotifyPropertyChanged
。然后就可以将它绑定到Slider的属性
InputTransparent
上。

例如:

public class MyViewModel : INotifyPropertyChanged
{
    private bool _inputTransparent;
    public bool InputTransparent
    {
        set
        {
            SetProperty(ref _inputTransparent, value);
        }
        get { return _inputTransparent; }
    }


    bool SetProperty<T>(ref T storage, T value, [CallerMemberName] string propertyName = null)
    {
        if (Object.Equals(storage, value))
            return false;
        storage = value;
        OnPropertyChanged(propertyName);
        return true;
    }
    protected void OnPropertyChanged([CallerMemberName] string propertyName = null)
    {
        PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
    }
    public event PropertyChangedEventHandler PropertyChanged;
}
© www.soinside.com 2019 - 2024. All rights reserved.