2010-04-01 55 views
-3

假设我有两种WPF格式:Form1Form2Form1包含一个按钮,如果已调用第二个窗体的构造函数,该按钮应显示消息“True”。我怎样才能实现这个?如何验证在WPF中调用了另一个表单的构造函数?

+0

只需简单地在形式的构造函数MessageBox.Show呢? 或者你真的想要问什么是构造函数? – 2010-04-01 12:40:29

+4

你可以扩展你的问题吗?如果你想得到一个答案,这将有助于你更详细的需要。 – 2010-04-01 12:42:06

+1

您是否试图确定是否构建并显示了其他表单? – 2010-04-01 12:53:13

回答

1

模糊的问题......仄如果FormXs构造接到电话,从另一个类中:

有一个静态布尔(IsConstructed)在设置为true,在构造函数中FormX类,然后通过检查FormX.IsConstructed。

在有机会获得以下形式的参考的情况下,你可能只是做

if(null != ref_name){..} 

如果您希望收到通知,考虑提高和事件(如果引用是可能的)或命令。

很多,这可能取决于你的应用程序中设置...

0

第一次调用构造函数时,将某个布尔变量设置为“true”。

+0

也许有一种方法可以通过反射来实现。但我不认为System.Reflection可以做到这一点。我会看看Mono.Cecil,更强大的反射库。 – chriszero 2010-04-01 13:13:32

4
MessageBox.Show("true"); 

如果你能看到表单,你可以100%确定它已经被构建。

+2

然后将MessageBox.Show放置在另一个表单的构造函数中。 – Marek 2010-04-01 13:25:03

相关问题