MAUI (MVVM):在选择器选择更改时调用视图模型中的命令

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

在.NET MAUI中,有一个控件“Picker”,它似乎没有用于在页面视图模型中调用命令的选项。按钮有一个“命令”,允许您通过单击按钮来选择命令。然而Picker似乎没有这个。

Picker 确实有“SelectedIndexChanged”,它允许您在后面的代码(xaml.cs 文件)中创建事件处理程序。但当我已经在我的应用程序中采用了 MVVM 结构时,这确实没什么好处。我希望能够调用 ViewModel 命令,以便我可以更改其中的一些数据并根据用户选择器的选择更改视图显示。

我认为可能有一种方法可以将事件处理程序从代码隐藏文件发送到 viewmodels 命令方法,但这肯定是一个有点垃圾的解决方案......

我的问题是:

  1. 是否可以从视图 xaml 中调用视图模型中的命令(如果可以的话如何?)?
  2. 如果上述情况是否定的,最好的替代方案是什么?
  3. 我对选择器/MVVM/EventHandling 的解释是否错误?我愿意接受批评。
xaml mvvm maui
1个回答
0
投票

Picker
类有一个名为
SelectedItem
SelectedIndex
的可绑定属性,当Picker选择更改时,两者都会更改ViewModel中的绑定属性。

如果您需要对更改做出反应,可以订阅 ViewModel 本身中的

PropertyChanged
事件。

© www.soinside.com 2019 - 2024. All rights reserved.