我在使用MVVMLight时面临一系列问题。 其中一个是在应用程序中传递非字符串消息。 这是我传递的消息类型 -
public class NameValue
{
public NameValue()
{
}
public string Name { get; set; }
public string Value { get; set; }
}
View1中的
Messenger.Default.Send<NameValue>(nv, "Message1");
ViewModel2中的
Messenger.Default.Register<NameValue>(this, "Message1", OnMessageSent);
private void OnMessageSent(NameValue nv)
{
}
当我使用Messender.Default从View向另一个ViewModel传递消息时,它在消息类型为字符串时起作用,但在消息类型为“NameValue”时则不起作用。
如果其他人遇到同样的问题,或者在实施过程中出现问题,请告诉我。
答案 0 :(得分:0)
我可以通过调试星期五上传的SL4源代码解决此问题。
问题出在注册消息的代码中,用于侦听具有相同名称的不同“类型”消息。