我使用C#为Windows窗体应用程序创建了一个用户控件。此用户控件具有一些属性。在运行时,如果用户没有输入此属性的值,我想显示一个消息框并退出应用程序。
问题是当我在用户控件的Load事件中编写检查代码时。我拖的时候将它放在消息框出现的表格上。
private void UserControl1_Load(Object sender, EventArgs e)
{
if (_getFirstPageArgument==null || _getFirstPageArgument.Length==0)
{
throw new Exception("Some Message");
}
}
如何区分表单上的负载和运行时的负载?
答案 0 :(得分:4)
我担心这里有一个更大的问题。但要解决您的直接问题(如果我理解正确的话......)有一个名为DesignMode
的表单属性。当您处于visual studio设计模式时,这将是true
。在运行时,这将是false
。
答案 1 :(得分:1)
对于初学者来说,@ Niimas案例可以是一个很好的学习点,可以理解Visual Studio实际上运行并执行部分代码,即使我们处于设计时,这就是调用构造函数的原因。甚至“DesignMode”属性也不是100%可靠。您可以在此处找到与http://weblogs.asp.net/fmarguerie/archive/2005/03/23/395658.aspx
相关的有趣说明答案 2 :(得分:0)
如果您只想知道何时将类型本身加载到运行时(而不是特定实例),则可以将代码放入该类的静态构造函数中。
如果我误解了您的问题,请在您希望特定事件发生时使用时间表澄清。