WPF中的DesignMode判断
2016-05-25 22:45
141 查看
WPF中提供你一个类似WinForm的DesignMode属性的方法来判断当前是否处于设计器模式:
bool IsInDesignMode
{
get { return DesignerProperties.GetIsInDesignMode(this);
}
}
对于非UI对象,要判断是否处于设计器模式,则可以这么使用:
bool IsInDesignMode
{
get { return DesignerProperties.GetIsInDesignMode(new DependencyObject());
}
}
但是,这两种方式有时会失效(具体什么情况下会失效不明),这个时候,则可以试一下如下这种方法。
bool IsInDesignMode
{
get
{
return (bool)DesignerProperties.IsInDesignModeProperty
.GetMetadata(typeof(DependencyObject)).DefaultValue;
}
}
这种方式没有UI线程的限制,感觉也是最稳定的一种方式,平时大可以用这种方式好了。
bool IsInDesignMode
{
get { return DesignerProperties.GetIsInDesignMode(this);
}
}
对于非UI对象,要判断是否处于设计器模式,则可以这么使用:
bool IsInDesignMode
{
get { return DesignerProperties.GetIsInDesignMode(new DependencyObject());
}
}
但是,这两种方式有时会失效(具体什么情况下会失效不明),这个时候,则可以试一下如下这种方法。
bool IsInDesignMode
{
get
{
return (bool)DesignerProperties.IsInDesignModeProperty
.GetMetadata(typeof(DependencyObject)).DefaultValue;
}
}
这种方式没有UI线程的限制,感觉也是最稳定的一种方式,平时大可以用这种方式好了。
相关文章推荐
- 第12周项目3-数组类运算的实现
- C++实验6——数组操作
- Java设计模式(四):原型模式Prototype
- 常见的排序算法(四)( 归并排序,计数排序 , 基数排序)
- 基于51单片机+DAC0832的信号发生器
- java mongodb驱动下载地址
- Java 内部类访问格式
- Bash玩转脚本3之几个指令有趣的筛选京东评价
- S3C2440 之USB设备篇
- error和exception有什么区别?
- UVA 10375 - Choose and divide(数论)(组合数学)
- 黑马程序员——Java基础---循环语句和控制跳转语句和Mark标记和方法重载
- 模块化编程
- 剑指offer之编程(十一)
- java的primitive主数据类型和引用
- 149_缓存网络数据
- AndroidJNI 通过C++调用JAVA
- 异常整理之:java.lang.NoClassDefFoundError:org/hamcrest/SelfDescribing
- 每天刷个算法题20160521:二叉树高度(递归与非递归)
- HTTP缓存的机制有哪些?