【问题标题】:How to make a UserControl inert at design time?如何在设计时使 UserControl 惰性?
【发布时间】:2010-09-28 01:37:30
【问题描述】:

我有一个 UserControl 可以做一些很酷的视频捕捉工作。现在我把那个控件放在一个表单上——它马上就开始工作了,即使是在设计时!这是非常令人欣慰的,所有看到它工作,但它在设计时有点烦人,它减慢了我的速度。我知道在设计时在另一个表单/控件上使用 UserControl 时它实际上处于运行时,但我希望能够在它不在实际运行的应用程序中时将其关闭。

最好的方法是什么?

【问题讨论】:

    标签: c# winforms user-controls


    【解决方案1】:

    将类似这样的代码放入您的控件中:

    if(DesignMode)
       return;
    

    DesignMode 是告诉您正在设计器中运行的属性。

    【讨论】:

      【解决方案2】:

      UserControl 有一个名为 DesignMode 的属性 - 如果这是真的,您可以跳出任何控制逻辑。

      或者,如果您的项目的设计方法适合它,您可以在其上实现绑定,将所有工作逻辑移植到非 UI 控制器类,并且只在构造函数中设置控制器 DataSource。设计者通常意识到它无法预测分配给它的实例会是什么,所以不会尝试。

      【讨论】:

        猜你喜欢
        • 2013-08-12
        • 2011-05-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多