簡體   English   中英

將在代碼背后創建的對象注入到ViewModel中

[英]Inject object created in code-behind to ViewModel

我使用Bing Map創建應用,然后在XAML文件中創建該地圖的實例,如下所示:

<maps:Map x:Name="MyMap"/>

為了“使用”它,我需要將Map的這個實例傳遞給另一個項目(PCL)中的viewModel。 我有

我假設地圖是在this.InitializeComponent()中創建的。

public MainPage()
{            
    this.InitializeComponent();                     
}

這也是觸發我的DI的地方:

 public ViewModelLocator()
        {            
            ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);

            SimpleIoc.Default.Register<MainViewModel>();            
            SimpleIoc.Default.Register<IMap, MyBingMap>();                    
        }

MyBingMap是我希望傳遞給VM的IMAP的實現。 但是在我這樣做之前,我需要它具有在代碼背后創建的Map實例。

我希望我的問題對某人足夠清楚。 我對所有可以將myMap傳遞給VM的建議myMap開放myMap 謝謝!

地圖本身有一個Loaded事件,您可以在載入地圖后使用它來獲取地圖。

暫無
暫無

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

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