处理WPF用户控件的事件

Gab*_*tin 8 c# wpf events user-controls

我有一个带有几个按钮的用户控件,根据使用它的类需要采取不同的操作.

问题是我不知道如何实现这些处理程序,因为当从最终应用程序使用我的用户控件时,我没有直接访问按钮来指定哪个处理程序处理哪些事件.

你会怎么做?

J..*_*... 18

另一种方法是通过UserControl中的事件公开事件:

public partial class UserControl1 : UserControl
{
    public UserControl1()
    {
        InitializeComponent();
    }


    public event RoutedEventHandler Button1Click;

    private void button1_Click(object sender, RoutedEventArgs e)
    {
        if (Button1Click != null) Button1Click(sender, e);     
    }
}
Run Code Online (Sandbox Code Playgroud)

这为您的usercontrol提供了一个Button1Click事件,该事件与您控件中的该按钮挂钩.