簡體   English   中英

將App.xaml中的Parm傳遞給ViewModel-Silverlight MVVM

[英]Passing Parm from App.xaml to ViewModel - Silverlight MVVM

我有一個位於App.xaml.cs中的字符串UserName,我需要將其帶到ViewModel中以填充控件。 實現此目標的最佳方法是什么?

您最常使用控件資源來訪問ViewModel實例。 然后通過ViewModel中定義的公共方法,可以向其傳遞參數。

((ViewModel1)this.Resources["ViewModel1"]).Test(p);

測試是ViewModel中接收參數的公共方法。

您可以發送包含該值的消息(例如MvvmLight Messenger類),然后ViewModel將注冊以接收它。

在App.xaml.cs中:

Messenger.Default.Send<string>(Username);

在ViewModel的構造函數中:

Messenger.Default.Register<string>(this, m => 
    {
        this.Username = m; // or whatever you need to do with the value
    });

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM