gpt4 book ai didi

mvvm - 从 ViewModel 到 View 通信

转载 作者:行者123 更新时间:2023-12-03 10:59:25 25 4
gpt4 key购买 nike

我有一种情况,我需要从 ViewModel 到 View 进行通信,以防发生更改。这里的问题是,我要更新的属性没有 DependencyProperty,我已经设法通过打破一点 MVVM 模式规则将其从 View“绑定(bind)(不是真的但是..)”到 VM并简单地添加一个事件的代码隐藏:

(ViewModelSomething as DataContext).Password = pb.Password;

这有效。问题是当我想在 VM 中发生更改时更新 View 上的此属性时。有没有可能有这样的联系?

最佳答案

您可以创建 GetCredential()方法,您可以在 ViewModel 中从此方法获取更新的值。

实现将像

查看.cs

public Credential GetCredential()
{
var credential = new Credential()
{
Username = txtUserName.Text,
Password = txtPassword.Password
};
return credential;
}

您需要一个 凭证类(class)
 public class Credential
{
public string Username { get; set; }
public string Password { get; set; }
}

ViewModel.cs

在提交按钮命令处理程序上,您可以从 View 中获取值
 Credential credential = View.GetCredential();

关于mvvm - 从 ViewModel 到 View 通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21711492/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com