从第一天起,我一直在想,当我开始阅读时,.NET Framework是如何工作的?
首先,拥有像Visual Studio这样的IDE真的很棒。例如,当我单击并删除文本框,按钮,设置其属性等时,一切正常。 但在Java的情况下,在大多数情况下我们作为程序员编写代码来开发Frame(窗口)。但是在.NET的情况下,Visual Studio使事情变得更容易,但是如何在不编写任何代码的情况下创建所有Windows,按钮等的工作?
如果我更改了表单设计区域中的按钮名称,它将在何处存储,更重要的是,当我们执行程序时它是如何显示的?这太神奇了吗?或者引擎盖下有一个很长的过程?
答案 0 :(得分:7)
这背后绝对没有魔力。 Visual Studio中的可视窗体设计器为您生成C#代码。只需查看Form1.designer.cs
文件。
答案 1 :(得分:0)
.designer.cs中的代码是通过序列化生成的(对象 - >代码,代码 - >对象)。如果你想尝试更好地了解幕后发生的事情,请查看CodeDomSerializer类(使用Reflector,您可能需要检查System.Design.dll中的ControlCodeDomSerializer)。当然,您可以为自定义控件和组件创建自己的序列化程序。