我使用C#为windows窗体应用程序创建了一个用户控件。此用户控件具有某些属性。在运行时,如果用户没有输入这些属性的值,我想显示一个消息框并退出应用程序。
问题是当我在用户控件的Load事件中编写检查代码时。当我把它拖放到窗体上时,消息框就会出现。
private void UserControl1_Load(Object sender, EventArgs e)
{
if (_getFirstPageArgument==null || _getFirstPageArgument.Length==0)
{
throw new Exception("Some Message");
}
}如何区分窗体上的加载和运行时加载?
发布于 2011-03-24 03:53:02
我担心这里有一个更大的问题。而是为了解决你眼前的问题(如果我理解正确的话…)有一个名为DesignMode的表单属性。当您处于visual studio设计模式时,这将是true。在运行时,这将是false。
发布于 2011-03-24 04:27:00
对于初学者来说,@Nimas案例可以作为一个很好的学习点来理解Visual Studio实际上运行和执行我们的代码的一部分,即使我们在设计时,这就是为什么构造函数被调用。即使是"DesignMode“属性也不是100%可靠的。您可以在此处找到与该http://weblogs.asp.net/fmarguerie/archive/2005/03/23/395658.aspx相关的有趣注释
发布于 2011-03-24 03:50:11
如果只想知道类型本身何时加载到运行库(而不是特定实例)中,可以将代码放入该类的静态构造函数中。
如果我误解了您的问题,请使用时间线澄清您希望具体事件发生的时间。
https://stackoverflow.com/questions/5410661
复制相似问题