【发布时间】:2023-04-10 07:19:02
【问题描述】:
我需要找出 WM_SETFOCUS 的定义位置。 例如,我知道它不是 System.Windows.Forms.WM_SETFOCUS
我在网上查了一下,似乎一切都只是使用了这个名字,没有提到如何让你的编译器知道这个名字。
我确实知道它代表的整数值,但我真的想引用权威程序集,而不仅仅是在我的代码中乱扔常量。
我在实现 IMessageFilter 的类中使用该值。
添加细节:
使用 IMessageFilter, 我收到消息,并且消息有一个 Msg 字段 (int) 来标识它的类型。在哪里可以找到这些整数值的 C# 定义? (我不需要一个名为 WM_SETFOCUS 的东西,我只需要包含我收到的值的所有定义的东西。) 既然 Microsoft 提供了 IMessageFilter,他们不应该也提供使其有用所需的信息吗?
【问题讨论】:
-
WM_SETFOCUS 正式存在于 Windows SDK 的 WinUser.h 中,而不是托管世界中。您可以找到一些定义了托管等效项的地方(为此使用反射器)但它不是官方的(因为 .NET 框架也被认为是“可移植的”)
标签: c# definition