Vb.net 在设计时运行的控件、属性、事件和计时器

Vb.net 在设计时运行的控件、属性、事件和计时器,vb.net,events,properties,custom-controls,design-time,Vb.net,Events,Properties,Custom Controls,Design Time,我在vb.net中使用一些自定义控件,其中我有一个布尔属性,每当它改变时,如果它的值为false,它就会启动计时器,如果它为true,它就会停止 如果计时器运行几秒钟,则会引发一个messagebox,警告出现问题 问题是,即使在设计时也会显示此messagebox。正如我所追踪的,当控件在设计时加载到winform中时,属性的默认值为false,它似乎启动计时器,当它结束时引发messagebox,每当我打开项目或重建它时都会发生这种情况 我不明白为什么会出现这种行为,因为这应该只发生在运行时

我在vb.net中使用一些自定义控件,其中我有一个布尔属性,每当它改变时,如果它的值为false,它就会启动计时器,如果它为true,它就会停止

如果计时器运行几秒钟,则会引发一个messagebox,警告出现问题

问题是,即使在设计时也会显示此messagebox。正如我所追踪的,当控件在设计时加载到winform中时,属性的默认值为false,它似乎启动计时器,当它结束时引发messagebox,每当我打开项目或重建它时都会发生这种情况

我不明白为什么会出现这种行为,因为这应该只发生在运行时,但这让我抓狂,我尝试在setter中的属性更改时直接启动计时器并创建“onpropertychanged”事件,但这种情况仍然发生在设计时

任何人都知道如何摆脱这种情况,或者如何解决它以避免这种情况的发生,但当程序甚至没有运行时,事情的发生确实令人不安

提前谢谢


关于

常用的方法是使用控件的属性

如果组件处于设计模式,则为true;否则,错误


因此,在您的酒店中,在启动计时器之前,首先检查
DesignMode
是否为
False

它的工作方式就像一个符咒!谢谢,我正要把电脑敲下来,但你救了我^^