2017-03-23 18 views
1

Visual Studio 2017引入了一個新窗口來幫助移動開發 - 「窗體預覽器」 - 窗口。如何檢測Forms Previewer模式?

有沒有人發現瞭如何檢測這種模式呢?

我有一些遙測代碼,它會拋出異常,因爲它尚未初始化 - 因此需要檢測這種「設計」模式。

回答

0

以前可以檢測到設計模式,如果不創建應用程序實例,就像這樣:

if (Application.Current==null) 
{ 
    // design mode 
} 

在Xamarin Studio中6.2的應用實例,即使在設計模式下創建的,所以我們不能用它就是這樣。你可以做的是創建自定義標記IsInDesignMode =真實,它未在設計模式下運行,像的OnStart地點更改爲false:

protected override void OnStart() 
{ 
    FakeViewModels.IsInDesignMode = false; 
} 

,然後使用它,無論你想:

if (FakeViewModels.IsInDesignMode == false) 
{ 
    this.BindingContext = this; 
} 

還要記住,App()構造函數,因此第一次導航發生在OnStart()之前,所以使用上面的方法不會覆蓋您將導航到的第一頁。