【发布时间】:2012-06-28 06:20:16
【问题描述】:
我是事件编程的新手,我显然误解了我正在尝试做的事情。
我有一个订阅另一个类的事件的 Windows 窗体应用程序。 T
//Class that provides event handler to Windows Forms application.
class Foo
{
public string Value{get; set;}
// Lots of other code
public void OnEventFired(object sender, EventArgs e)
{
// Attempt to access variable Value here.
}
}
从 Windows 窗体代码中,我首先在类 Foo 中设置变量 Value,然后触发将执行上述 OnEventFired 中代码的事件。
我看到的是,当在事件处理程序中使用变量 Value 时,它不包含在事件触发之前设置的值(Value 为空)。
我知道我可以扩展 EventArgs 以包含可变数据,但我试图理解为什么我正在做的事情不起作用。
【问题讨论】:
-
请提供一个简短但完整的程序来演示该问题。这当然应该没问题。我怀疑这与你如何安排活动有关。
-
我想问题是你在哪里创建类的实例以及如何触发事件。问题当然不在于这段代码
标签: c# winforms events event-handling scope