關於使用mvvmlight v4的Messenger,我有一個問題: 我們應該在哪裏放置Messenger的註冊表? 我找到了一些例子,他們把它們放在構造函數中。但是我遇到了一個問題,無論何時我們創建一個視圖實例,這個消息都會再次被註冊 - >消息處理器將被調用爲相同數量的註冊消息。MVVM-Light:我們應該在哪裏放置Messenger的註冊表
如:我喜歡註冊的消息:
Messenger.Default.Register<NotificationMessage>(this, (nm) =>
{
if (nm.Sender == this.DataContext)
{
if (nm.Notification == "OnNext")
{
this.Hide();
Form2 f2= new Form2();
f2.Show();
}
}
}
- >每次,第一時間用戶短聲下一步,出現1種形式,但是,當用戶再次點擊下一步,此時,2條消息被登記&使2種形式出現。 我該如何處理這種情況?
在此先感謝您的幫助。
很幸運,我找到解決這個問題的辦法:那就是我註銷消息之前,我註冊。像:Messenger.Default.Unregister(this);.無論如何,我仍在等待您的意見,以確保我做到了正確的方式。 –
kidgu