我正在开发一个 MVVM 应用程序,并有一个用于修改许多网络参数(IP、SubnetMask 等)的视图。
该视图包含许多绑定到 a 中的属性的文本框NetworkConfigViewModel
:
<TextBox>
<TextBox.Text>
<Binding Path="IP" UpdateSourceTrigger="PropertyChanged"/>
</TextBox.Text>
</TextBox>
... etc
该视图还包含一个名为 的按钮Save Configuration
。该按钮绑定到 ViewModel 中的 RelayCommand,它负责根据请求将配置保存到远程设备。
我想修改要使用的文本框绑定,UpdateSourceTrigger="Explicit"
以便仅在用户明确单击“保存配置”时更新 ViewModel,而不是在修改值时更新。
我知道我需要调用BindingExpression.UpdateSource()
每个文本框。如何以对 MVVM 友好的方式执行此操作?向知道 UI 元素的 ViewModel 添加新的 RelayCommand 似乎不正确。