lor*_*ova 5 c# windows-forms-designer winforms
在C#(和Visual Basic)中,您可以System.Windows.Forms.Control直接从表单设计器添加几个非UI组件(那些不从中继承的组件).这些组件的例子是System.Windows.Forms.FolderBrowserDialog和System.Windows.Forms.Timer.
但是,使用UI设计器添加非UI控件而不是直接从代码中实例化它们会带来什么好处?这背后有一个理由吗?
我认为在设计器中使用非UI组件至少具有以下好处:
设计时支持
Windows窗体中最强大的功能之一是能够使用设计器来设置组件.
即使Timer不是UI组件,但您可以在设计时将其属性设置为间隔.这适用于许多其他组件,例如BindingSource,ErrorProvider...您可以使用非常友好的属性网格和类型编辑器和类型转换器来在设计时配置属性.
BindingSource到设计器,它使数据绑定非常容易.HelpProvider和Tooltip,因为它们与其他控件,这是很容易在设计模式对其进行配置.DataSource和DataMember这样的属性时,使用设计器并使用很好的属性网格功能非常友好.Localizable功能时Form,可以使用设计器完全使用它.标准代码
如果你看看设计师生成的代码,你会看到:
ISupportInitialize使用它们 BeginInit和EndInitthis.components给构造函数,然后在使用时使用它Dispose如果您不需要设计时支持并且为组件编写标准代码,那么在代码中使用主题是完全可以的.
| 归档时间: |
|
| 查看次数: |
181 次 |
| 最近记录: |