【问题标题】:Sequence of execution of Partial classes in C#C#中Partial类的执行顺序
【发布时间】:2011-05-21 23:47:00
【问题描述】:

我看到在 C# winforms 中有两个相同类(FORM)的部分类。

1. Form1.cs
2. Form1.Designer.cs

Designer 中所做的更改会同时影响表单的布局(无需编译),但在 form1.cs(代码文件)中所做的更改 运行时的效果布局。

这两个文件的主要区别是什么?
哪一行在两个文件中有所不同?
部分类的执行顺序是什么?

【问题讨论】:

  • 接受的答案(和它的 cmets)是正确的。但是,如果您询问.designer.cs 文件,那真的没关系。 您不应该自己修改此文件。它由 Visual Studio 设计器在内部处理。

标签: c# .net winforms partial-classes


【解决方案1】:

部分类只允许开发人员将类拆分到多个文件中。编译时,就好像该类存在于一个文件中。

【讨论】:

  • 为了澄清这个答案,“执行顺序”与该类存在于一个文件中完全相同。编译器将读入这两个文件并将它们组合成一个类。所以本身没有“执行顺序”。
  • 在 Designer 中所做的更改如何在未编译的情况下影响布局,但在 form1.cs(代码文件)中所做的更改会在运行时影响布局?
  • @Javed:Visual Studio 设计器查看它生成的.designer.cs 文件。您自己的所有代码都应该在普通的 .cs 文件中。
  • Javed - 我认为你是在向后看。设计器文件仅代表您在设计时在 Visual Studio 中所做的拖放更改。所以是的,您可以在 form1.cs 文件中进行更改,这些更改直到运行时才会执行,但从技术上讲,form1.designer.cs 文件代码也不是。您正在使用 Visual Studio 设计器,该设计器在 .designer.cs 文件中生成代码以进行编译。您正在查看 .designer.cs 文件,就好像它具有一些它没有的动态超级功能 - 它只是与 VS 中的 WYSIWYG Winforms 布局编辑器同步。
猜你喜欢
  • 1970-01-01
  • 2019-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-06
  • 1970-01-01
相关资源
最近更新 更多