c# - 他是如何在不定义 txtTitle 和 txtMessage 的情况下使他的代码工作的?
问题描述
https://www.youtube.com/watch?v=8vAx0kObdps https://pastebin.com/MHyQD4cd
命名空间 Note_taking_App { public partial class Form1 : Form { DataTable table;
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
table = new DataTable();
table.Columns.Add("Title", typeof(String));
table.Columns.Add("Messages", typeof(String));
dataGridView1.DataSource = table;
dataGridView1.Columns["Messages"].Visible = false;
dataGridView1.Columns["Title"].Width = 140;
}
private void bttNew_Click(object sender, EventArgs e)
{
txtTitle.Clear();
txtMessage.Clear();
}
在这个视频中,他正在制作一个表格,我试图复制它。但是,我意识到他从未定义两个变量,并且仍然能够使表单工作。这怎么可能?
pastebin 链接中链接的完整代码。
解决方案
当您在设计器中将 UI 元素添加到表单时,它们会被添加到表单的分部类中。在解决方案资源管理器中,如果您找到您的表单,您应该能够展开它并查看包含部分类的设计器文件,其中在代码中定义了控件。
您可以看到他略微覆盖的解决方案资源管理器,他在此处扩展了表单
推荐阅读
- git - 在 git 中存储重复内容是一种反模式?
- javascript - 从 java serverlet 到另一个 jsp 的图像
- php - 仅在与单个单词兼容时更改
- java - 在 java 代码中使用 kotlin 库时的 Android 异常
- java - 如何最有效地使用 Java 8 功能在 ArrayList 中添加或替换自定义对象?
- hugo - 如何从正面创建侧面导航中的 Hugo 多级菜单
- rmi - 如何通过 Java 11 + Openwebstart 在 RMI 中使用 java.sql.Timestamp
- asp.net - .less 文件不渲染
- c - 使用数组的平均分数 - 由用户在特定时间输入
- c# - 使用 LINQ 进行聚合