

新闻资讯
技术学院MAUI数据绑定核心是可通知变化的数据源、BindingContext指定数据源、控件用{Binding xxx}声明绑定属性;推荐继承ObservableObject并用SetProperty实现INotifyPropertyChanged,BindingContext需在InitializeComponent()后设置,绑定表达式支持StringFormat和Mode=TwoWay。
MAUI 数据绑定核心就三点:有可通知变化的数据源、页面知道该用谁当数据源(BindingContext)、控件写清楚要绑哪个属性({Binding xxx})。不复杂但容易忽略细节。
数据源必须能主动告诉界面“我变了”,否则界面永远卡在旧值。推荐继承 ObservableObject(来自 CommunityToolkit.Mvvm),它自动帮你处理 INotifyPropertyChanged:
private string _title = "欢迎"; public string Title { get => _title; set => SetProperty(ref _title, value); }
在页面的后台代码(MainPage.xaml.cs)里,把 ViewModel 实例设为 BindingContext:
public MainPage() { InitializeComponent(); BindingContext = new MainPageViewModel(); }(需先定义静态实例)控件属性值写成 {Binding 属性名},系统自动找 BindingContext 里的对应属性:
→ 显示 ViewModel 中的 Title 值Text="{Binding Value, StringFormat='当前值:{0:F1}'}"
Mode=TwoWay:
刚上手容易卡在这几个地方:
性没变?→ 检查 ViewModel 是否真继承了 ObservableObject 或手动触发 PropertyChanged{x:Reference slider} 直接指定源,不用依赖 BindingContext:Text="{Binding Source={x:Reference slider}, Path=Value}"
基本上就这些。跑通一次单向绑定,再加 Mode=TwoWay 和简单验证,你就已经踩进 MVVM 的正门了。