DesignerProperties
使用GetIsInDesignMode(element)
和IsInDesignTool
公开了两个类似的设计状态。
答案 0 :(得分:1)
快速谷歌搜索显示,IsInDesignTool似乎适用于Silverlight和ExpressionBlend。所以也许IsInDesignMode是用于VS的东西,但其他人需要IsInDesignTool。
答案 1 :(得分:0)
它们完全相同
IsInDesignTool
"如果元素在设计器的上下文中运行,则为true;否则,错误。 "
MDSDN of IsInDesignTool
GetIsInDesignMode(元素)
"元素的IsInDesignMode属性值。"
MDSDN of GetIsInDesignMode(element)
然而,在每个蓝色的月亮中,Visual Studio都失败了
DesignerProperties.GetIsInDesignMode(this)
最好使用
return DesignerProperties.GetIsInDesignMode(this) || DesignerProperties.IsInDesignTool;
如果你不想让它崩溃。
public static bool GetIsInDesignMode(DependencyObject element)
{
if (element == null)
{
throw new ArgumentNullException("element");
}
bool flag = false;
if (Application.Current.RootVisual != null)
{
flag = (bool) Application.Current.RootVisual.GetValue(IsInDesignModeProperty);
}
return flag;
}
public static bool IsInDesignTool
{
get
{
return isInDesignTool;
}
[SecurityCritical]
set
{
isInDesignTool = value;
}
}
internal static bool InternalIsInDesignMode
{
[CompilerGenerated]
get
{
return <InternalIsInDesignMode>k__BackingField;
}
[CompilerGenerated]
set
{
<InternalIsInDesignMode>k__BackingField = value;
}
}