首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MVVM轻型调度员辅助设计时间错误

MVVM轻型调度员辅助设计时间错误
EN

Stack Overflow用户
提问于 2015-06-15 21:59:02
回答 1查看 624关注 0票数 2

在为Windows 8.1 WinRT应用程序构建视图模型之一期间,我调用了DispatcherHelper.CheckBeginInvokeOnUI

我在运行时在App.xaml.cs OnLauched事件处理程序上初始化了DispatcherHelper.CheckBeginInvokeOnUI,但是在设计期间,当我调用DispatcherHelper.CheckBeginInvokeOnUI时,没有这样做,我得到了一个异常消息“DispatcherHelper未初始化”。

除了有条件地调用DistpatcherHelper、先检查ViewModelBase.IsInDesignMode之外,在设计期间有没有其他方法可以避免这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-15 22:33:37

正如问题中提到的,避免此问题的一种可能方法是首先检查我们是否处于设计模式,就像在这个要旨中所做的那样。

代码语言:javascript
复制
using System;
using GalaSoft.MvvmLight;
using GalaSoft.MvvmLight.Threading;

namespace MvvmLight.Helpers
{
    public class DesignAwareDispatcherHelper
    {
        public static void CheckDesignModeInvokeOnUI(Action action)
        {
            if (action == null)
            {
                return;
            }
            if (ViewModelBase.IsInDesignModeStatic)
            {
                action();
            }
            else
            {
                DispatcherHelper.CheckBeginInvokeOnUI(action);
            }
        }
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30855695

复制
相关文章

相似问题

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