如何区分用户控件中单击的按钮?

时间:2017-09-08 15:50:00

标签: c# wpf user-controls

我有一个带有两个按钮的用户控件(添加,删除)。从主窗口访问时,如何知道单击了哪个按钮?

btnAdd有一个方法,而btnDelete有另一个方法应该被调用。

2 个答案:

答案 0 :(得分:0)

在MainWindow

中为按钮adddelete创建两个单独的命令

您可以在userControl中绑定命令,如下所示:

<Button Command={Binding AddCommand}/>

并将datacontext的{​​{1}}设置为XAML或构造函数中的Mainwindow

this.datacontext = this;

有关如何创建Command的详细信息,请参阅thisthis

答案 1 :(得分:-1)

如果我正确理解您的问题,您可以在事件处理程序中转发sender参数:

private void Button_Click(object sender, RoutedEventArgs e)
{
    Button button = sender as Button;
    if (button.Name == "btnAdd ")
    {
        //add button was clicked...
    }
    else if (button.Name == "btnDelete")
    {

    }
}
<Button x:Name="btnAdd" Content="Add" Click="Button_Click" />
<Button x:Name="btnDelete" Content="Delete" Click="Button_Click" />
相关问题