首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >有没有办法检查WPF当前是否在设计模式下执行?

有没有办法检查WPF当前是否在设计模式下执行?
EN

Stack Overflow用户
提问于 2009-05-07 20:10:28
回答 9查看 67.6K关注 0票数 157

有没有人知道一些全局状态变量,这样我就可以检查代码当前是否在设计模式下执行(例如在Blend或Visual Studio中)?

它看起来像这样:

代码语言:javascript
复制
//pseudo code:
if (Application.Current.ExecutingStatus == ExecutingStatus.DesignMode) 
{
    ...
}

我需要这样做的原因是:当我的应用程序在Expression Blend中以设计模式显示时,我希望ViewModel改为使用"Design Customer类“,其中包含设计器可以在设计模式下查看的模拟数据。

但是,当应用程序实际执行时,我当然希望ViewModel使用返回真实数据的实际Customer类。

目前我解决这个问题的方法是让设计者在开发之前进入ViewModel并将"ApplicationDevelopmentMode.Executing“更改为"ApplicationDevelopmentMode.Designing":

代码语言:javascript
复制
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)
        {
            throw new Exception(ex.Message);
        }
    }
}
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/834283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档