9
WPFが現在デザインモードで実行されているかどうかを確認する方法はありますか?
コードが現在デザインモード(BlendやVisual Studioなど)で実行されているかどうかを確認できるように、利用可能なグローバル状態変数を知っている人はいますか? 次のようになります。 //pseudo code: if (Application.Current.ExecutingStatus == ExecutingStatus.DesignMode) { ... } これが必要な理由は、Expression Blendでアプリケーションをデザインモードで表示しているときに、デザイナーがデザインモードで表示できるモックデータを含む「Design Customerクラス」をViewModelで代わりに使用するためです。 ただし、アプリケーションが実際に実行されているときは、もちろん、ViewModelで実際のデータを返す実際のCustomerクラスを使用する必要があります。 現在私はこれを解決するために、デザイナーが作業する前に、ViewModelに移動して「ApplicationDevelopmentMode.Executing」を「ApplicationDevelopmentMode.Designing」に変更します。 public CustomersViewModel() { _currentApplicationDevelopmentMode = ApplicationDevelopmentMode.Designing; } public ObservableCollection<Customer> GetAll { get { try { if (_currentApplicationDevelopmentMode == ApplicationDevelopmentMode.Developing) { return Customer.GetAll; } else { return CustomerDesign.GetAll; } } catch (Exception ex) { …
147
c#
wpf
expression-blend