確定WPF 執行模式:設計時與運行時
您是否正在開發WPF 應用程式並需要一種方法來區分設計時(例如,設計時) ,在Visual Studio 或Blend 中)和運行時執行?如果是這樣,你並不孤單。幸運的是,WPF 提供了可靠的解決方案。
辨識設計時模式
WPF 提供了一個名為 DesignerProperties.GetIsInDesignMode() 的屬性,該屬性採用 DependencyObject 作為其參數。透過利用此屬性,您可以確定程式碼是否在設計模式下執行。
// 'this' represents your UI element DesignerProperties.GetIsInDesignMode(this);
以 Silverlight 或 WP7 為目標時,備用屬性 DesignerProperties.IsInDesignTool 更合適,因為 GetIsInDesignMode 有時可能會產生 false Visual Studio 中的積極因素。
DesignerProperties.IsInDesignTool
對於WinRT、Metro 和Windows 應用商店應用程序,等效項目是Windows.ApplicationModel.DesignMode.DesignModeEnabled:
Windows.ApplicationModel.DesignMode.DesignModeEnabled
範例場景
範例場景public ObservableCollection<Customer> GetAll { get { try { if (DesignerProperties.GetIsInDesignMode(this)) { return CustomerDesign.GetAll; } else { return Customer.GetAll; } } catch (Exception ex) { throw new Exception(ex.Message); } } }
您提到需要在ViewModel中區分設計時和運行時以顯示根據當前模式模擬客戶資料或即時資料。
透過在您的應用程式中利用 GetIsInDesignMode() GetAll 屬性,您可以根據執行環境在兩個資料來源之間無縫切換。 這種方法提供了一種方便靈活的方式來根據應用程式的執行上下文來管理資料。以上是如何確定我的 WPF 應用程式是在設計模式還是運行時運行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!