下面的代码无法正常工作以检测它是否处于设计模式(VS.Net 2003 - 控制库):
if(this.Site!= null && this.Site.DesignMode == true)
{
// Design Mode
}
else
{
// Run-time
}
它用于复杂的用户控件,从另一个用户控件派生,并包含其他用户控件.
是否有另一种方法来检测VS.NET 2003中的设计时间或上面的代码有什么问题?
DesignMode
将无法在构造函数内部工作.一些替代方案(不确定它们是否在1.1中工作)是
if (System.ComponentModel.LicenseManager.UsageMode == System.ComponentModel.LicenseUsageMode.Designtime)
要么
打电话GetService(typeof(IDesignerHost))
,看看它是否返回了什么.
第一个选择我运气好了.