在Visual Studio中,在Windows窗体应用程序上工作时,可以在“窗体设计视图”中找到某个选项.我在谈论GenerateMember选项(在Properties窗口的Design部分下).此选项的说明如下:Indicates if a member variable will b...

在Visual Studio中,在Windows窗体应用程序上工作时,可以在“窗体设计视图”中找到某个选项.我在谈论GenerateMember选项(在Properties窗口的Design部分下).
此选项的说明如下:
Indicates if a member variable will be generated for this component.
因此,如果我使用Form Dessigner创建一个文本框tb1到我的Form f1中并且我将此选项设置为false,那么我无法访问代码中的控件(f1.tb1和tb1都不存在).
应该有充分的理由这样做,但我不知道这个原因是什么,这就是我要问的原因:
>什么是设计背后的基本原理> GenerateMember选项?
>可以实现哪些事情将此选项设置为false,而使用true无法实现?
>在什么情况下我应该保持将控件设置GenerateMember隐藏为false而不是让它具有默认值(true)?
谢谢.
解决方法:
当GenerateMember设置为false时,不是将大量私有字段限定为Form类实例,而是创建它们作用于InitializeComponent()方法 – 这意味着你将不再拥有this.btnOk或this.btnCancel你的表格.
我认为这在很大程度上只是个人偏好.通过指定哪些控件直接显示为表单类其余部分的私有字段,可以避免在修改代码时迷失在未使用的字段中.
除此之外,没有真正的功能差异.您仍然可以通过以下方式访问控件:this.Controls集合.
本文标题为:c# – Windows窗体设计器,设计背后的基本原理> GenerateMember


基础教程推荐
- C#调用摄像头实现拍照功能的示例代码 2023-03-09
- c# – USING块在网站与Windows窗体中的行为不同 2023-09-20
- C#中的Linq to JSON操作详解 2023-06-08
- C# 解析XML和反序列化的示例 2023-04-14
- Unity shader实现高斯模糊效果 2023-01-16
- C#获取指定目录下某种格式文件集并备份到指定文件夹 2023-05-30
- 实例详解C#实现http不同方法的请求 2022-12-26
- C#中 Json 序列化去掉null值的方法 2022-11-18
- Unity 如何获取鼠标停留位置下的物体 2023-04-10
- C#通过标签软件Bartender的ZPL命令打印条码 2023-05-16