簡體   English   中英

適用於WPF應用程序的Caliburn Micro View First Bootstrapper OnStartup

[英]Caliburn Micro View First Bootstrapper OnStartup for WPF application

首先,這是我第一次與Caliburn.Micro,C#和WPF聯系。 我已經看過Calibur.Micro教程,並在“ 全部關於動作 ”和“第一視圖”小節停下來了。 作者編寫了針對Silverlight應用程序的解決方案,如下所示:

public class MefBootstrapper : BootstrapperBase
{
    //same as before

    protected override void OnStartup(object sender, StartupEventArgs e)
    {
        Application.RootVisual = new ShellView();
    }

    //same as before
 } 

因此這是解決方案如何說以視圖為基礎的引導程序。 關於WPF,我僅獲得神秘信息:

在這種情況下,我們僅重寫OnStartup,自己實例化視圖並將其設置為RootVisual(如果使用WPF,則調用Show)。

因此,Silverlight示例對於我來說非常清楚,我們只需手動實例化屬性Application.RootVisual的適當View。 但是對我來說,完全不清楚Show方法是什么,它是哪個成員。 怎么稱呼它。

感謝幫助!

Caliburn.Micro提供一個BootstrapperBase類,您可以從中繼承自己的bootstrapper類。 它具有一個虛擬方法OnStartup ,您可以重寫該方法來初始化shellview 它還提供了一種實用程序方法DisplayRootViewFor ,該方法可用於顯示指定viewmodel類型的相關視圖。

所以一個簡單的實現看起來像這樣,

protected override void OnStartup(object sender, StartupEventArgs e)
{
    DisplayRootViewFor<TShellViewModel>();
}

其中TShellViewModel是Shell ViewModel的類型。 框架將使用約定來解析視圖,並進行必要的基礎操作以顯示該視圖。 此鏈接將為WPF提供基於MEF的IOC支持的引導程序實現的更廣泛的信息。

暫無
暫無

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

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