【发布时间】:2012-08-03 19:26:07
【问题描述】:
我有一个 UserControl A。
在文件后面的代码中,我想引发一个特定事件(由我创建)。
现在我希望主窗口(包含用户控件)正在监听事件。
在 WindowsForms 中我是这样使用的:
namespace MyProgramm
{
public partial class MyClass
{
public MyClass()
{
InitializeComponent();
DataContext = this;
}
internal event MyEventHandler MyEvent;
private void RaiseMyEvent()
{
if (MyEvent!= null)
{
MyEvent(this, ...);
}
}
public string Name { get; set; }
}
internal delegate void MyEventHandler (MyClass sender, ...);
}
如何在 WPF 中以一种很好的方式解决这个问题?
【问题讨论】:
-
完全一样,除了
internal声明可能也应该是public,并且您应该考虑使用EventHandler<TEventArgs> 而不是您自己的事件处理程序类型。你的问题在哪里? -
@Clemens 我没问题,我只是想问问有没有其他方法。
标签: .net wpf events event-handling code-behind