C# windows窗体是否具有唯一标识它的内容?

C# windows窗体是否具有唯一标识它的内容?,c#,.net-3.5,compact-framework,C#,.net 3.5,Compact Framework,我有一大堆表格,我需要把它们放在一个列表中,并且知道表格是否已经在那里了 由于与此问题无关的原因,我实际上无法参考列表中的表格 winform上是否有我可以使用的ID或Guid?或者我应该在所有表单中添加一个Guid吗 注意,这是一个紧凑的框架。因此,需要在.NETCF 3.5中提供“ID”。我不知道winform中存在任何ID。因此,我相信为每个表单实例提供GUID的方法可能是一个可行的解决方案。您的表单只是一个类,一个具有属性的对象,我看不出MS添加ID来标识特定表单的具体原因,因为这确实是

我有一大堆表格,我需要把它们放在一个列表中,并且知道表格是否已经在那里了

由于与此问题无关的原因,我实际上无法参考列表中的表格

winform上是否有我可以使用的ID或Guid?或者我应该在所有表单中添加一个Guid吗


注意,这是一个紧凑的框架。因此,需要在.NETCF 3.5中提供“ID”。

我不知道winform中存在任何ID。因此,我相信为每个表单实例提供GUID的方法可能是一个可行的解决方案。您的表单只是一个类,一个具有属性的对象,我看不出MS添加ID来标识特定表单的具体原因,因为这确实是一个特定的要求,这只是我的观点。

我不知道winform中存在任何ID。因此,我相信为每个表单实例提供GUID的方法可能是一个可行的解决方案。您的表单只是一个类,一个具有属性的对象,我看不出MS添加ID来标识特定表单的具体原因,因为这确实是一个特定的要求,这只是我的观点。

我对紧凑型框架知之甚少。我将查找
Form.Tag
属性。如果有,就用它。此属性用于程序员的意愿

否则,您可以泛化一个FormBase类,其他表单将从中继承。将Guid属性放入其中,以便访问它以验证表单在列表中的存在性

此外,
Contains
方法将对象作为参数,因此传递所需表单的实例将告诉您表单是否在列表中。尽管这可能有点过分,因为您必须实例化表单以验证其是否存在于列表中


另一种方法是使用
字典
,您可以在字典的TKey部分添加表单名称,在TValue部分添加表单名称。

我对紧凑型框架了解不多。我将查找
Form.Tag
属性。如果有,就用它。此属性用于程序员的意愿

否则,您可以泛化一个FormBase类,其他表单将从中继承。将Guid属性放入其中,以便访问它以验证表单在列表中的存在性

此外,
Contains
方法将对象作为参数,因此传递所需表单的实例将告诉您表单是否在列表中。尽管这可能有点过分,因为您必须实例化表单以验证其是否存在于列表中

另一种方法是使用
字典,您可以在字典的TKey部分添加表单名称,在TValue部分添加表单名称。

窗口句柄(
hWnd
)。查找表单的
句柄
属性。

窗口句柄(
hWnd
)应该可以完成此任务。查找窗体的
句柄
属性。

Form.Name(从控件继承)也可以执行此操作