Slider适合大范围连续调节(如音量),Stepper适合小步长精确增减(如数量);两者均支持双向绑定与事件响应,iOS需启用Slider.UpdateOnTap实现点击跳转。

MAUI 中的 Slider 和 Stepper 是两种常用的数值选择控件,用途不同但常配合使用:Slider 适合大范围连续调节(比如音量、亮度),Stepper 更适合小步长精确增减(比如数量、页码)。它们都支持双向绑定、事件响应和平台特性定制。
Slider 滑块的基本用法
Slider 默认显示一个可拖动的滑块条,值为 double 类型,范围由 Minimum 和 Maximum 控制,默认是 0–1。常用设置包括:
- 设置范围:
Minimum="0" Maximum="100",值会自动限制在该区间内 - 初始值用
Value="50",不写则取 Minimum - 监听变化:绑定
ValueChanged事件或使用 MVVM 绑定Value属性 - iOS 特有优化:点击滑杆任意位置直接跳转值,需启用
ios:Slider.UpdateOnTap="true"(XAML)或slider.On(C#)().SetUpdateOnTap(true)
Stepper 步进器的核心配置
Stepper 是带「+」「−」按钮的离散调节控件,每次点击按 Increment 增减,默认步长为 1,值类型也是 double。关键点有:
- 设定边界:
Minimum="0" Maximum="999",超出范围时值会被自动修正 - 控制步长:
Increment="5",例如用于每次加减 5 个单位 - 默认值:
Value="10",若未设且 Minimum > 0,则 Value 会被强制设为 Minimum - 事件处理:
ValueChanged触发时,EventArgs提供OldValue和NewValue
Slider 和 Stepper 联动的常见场景
两者经常一起出现,比如“用 Stepper 精调 + Slider 快速定位”。实现联动只需共享同一个绑定源或手动同步值:
- 在 ViewModel 中定义一个
public double Value { get; set; },两边都绑定到它 - 或在 Stepper 的
ValueChanged里更新 Slider 的Value,反之亦然(注意避免循环触发) - 视觉上建议把 Stepper 放 Slider 上方或下方,保持操作逻辑一致
iOS 平台细节别忽略
MAUI 的 Slider 在 iOS 上默认点击滑杆无效,必须显式开启 UpdateOnTap 才能支持“点哪跳哪”——这是用户直觉操作的关键。而 Stepper 在所有平台行为一致,无需额外配置。
基本上就这些。用对范围、步长和事件,再补上 iOS 的一点开关,两个控件就能稳稳跑起来。










