如何为C#Windows窗体定义窗口类名?

如何为C#Windows窗体定义窗口类名?,c#,winforms,C#,Winforms,我看到了一些关于这个主题的线程,但是它们太旧了,我想知道.NET4.5中是否有新的东西允许我为C#Windows窗体定义窗口类名。有人知道什么新鲜事吗,或者有创意吗?非常感谢 按照要求澄清我的问题: 我指的窗口类名不是窗口标题。它是每个窗口拥有的类名,并在操作系统中注册,因此它可以识别它并区分其他窗口。请参阅Win32 API FindWindow()/RegisterWindow()/WndClass结构以获得更深入的理解 旧线程说这是不可能的,但它们是旧的 我希望这有帮助 我想添加旧帖子的链

我看到了一些关于这个主题的线程,但是它们太旧了,我想知道.NET4.5中是否有新的东西允许我为C#Windows窗体定义窗口类名。有人知道什么新鲜事吗,或者有创意吗?非常感谢

按照要求澄清我的问题:

我指的窗口类名不是窗口标题。它是每个窗口拥有的类名,并在操作系统中注册,因此它可以识别它并区分其他窗口。请参阅Win32 API FindWindow()/RegisterWindow()/WndClass结构以获得更深入的理解

旧线程说这是不可能的,但它们是旧的

我希望这有帮助

我想添加旧帖子的链接,也许有人对它们感兴趣:

[


[

目前,无法更改C#Windows窗体的窗口类名,因为C#实现在方法“
私有字符串GetFullClassName(字符串className)”中定义它
”并且不会给程序员提供任何方法来重写此方法中定义的值。

您是指在应用程序的标题栏中还是在窗口类本身的实际命名中。默认值为Form1,但在创建表单之前,您应该能够轻松地更改它。我只是编辑了OP以澄清它。我从来都不必干预wWinForms使用WinApi调用的内部包装,因此我几乎没有任何帮助,但我想指出,WinForms与.NET2.0相比几乎没有变化(WinApi也基本相同),所以我个人怀疑是否有任何新的、简单的方法来处理您的问题。此外,WinForms和任何其他包装器库一样,旨在隐藏底层技术的内在复杂性,因此利用这个隐藏的框架不是一件容易的事。谢谢。但我想他们可以在应用程序类中添加一些虚拟方法,让ser根据需要定义窗口类名称。我理解这只是设计决策的问题。您确定您真的需要它吗?目标是什么?在您自己的窗口上使用
SendMessage
和其他API?还是什么?