如何在Visual Studio中查看c#控件自动生成的设计器代码?

本文关键字:自动生成 代码 控件 Visual Studio | 更新日期: 2023-09-27 18:02:00

现在对于我的用户控件,我在解决方案资源管理器中右键单击该控件,然后选择"查看代码"。然后,在右上角,所有类的元素都在一个下拉框中枚举,我选择灰色的构造函数,这将我带到我正在寻找的自动生成的.designer.cs文件。

我觉得这是一种非常迂回的方式,它不适合我。我是不是应该做得更好,避免编辑这些文件?它们是故意难以获取的,还是我显然错过了Visual Studio中一些简单的东西?

如何在Visual Studio中查看c#控件自动生成的设计器代码?

您应该能够很简单地使用解决方案资源管理器的树视图来展开用户控件项并查看隐藏代码和设计器文件。

这很奇怪,所以我想知道类型的用户控制(任何特定的项目类型)?

至于避免编辑这些自动生成的文件:是的,你应该厌倦这样做,并尽可能避免它。如果代码重新生成,您的更改将会消失(我想,对于用户控件来说,不可能是),并且生成它的工具的开发人员不能保证它在编辑后能够正常工作。

但是,有时您确实需要编辑这类文件。所以用你自己的判断来评估这样做的价值。我发现自己经常使用DBML设计器文件来删除默认构造函数,因为它在部分定义中与我自己的构造函数冲突,没有找到另一种方法来做我想要的。

编辑自动生成的代码从来不是个好主意。原因是代码可以在任何时候生成,而您的更改将会丢失。如果你真的,真的需要编辑代码,你应该使用分部类。但是95%的情况下,你根本不需要编辑自动生成的代码。你到底想要完成什么?

一个简单的方法:假设你有一个Label控件叫做Label1

如果在你的代码中从未实际使用过它,那么在你的某个方法中放置一些使用它的代码:

private void Test() {
  Label1.Text = null;
}

现在,将光标放在Label1控件上并按F12。这将带您了解Label1

的定义

希望有帮助!