如何在WPF中以编程方式添加事件处理程序,就像在Winform中一样

use*_*291 24 c# wpf winforms

这个winform指令的等价物是什么:

this.button1.Click += new System.EventHandler(this.button1_Click);
Run Code Online (Sandbox Code Playgroud)

在WPF?

更新:也适用于滑块.我应该声明什么名称空间?

我的观点是不要使用XAML.

Chr*_*l52 21

像这样......

this.btnTest.Click+=new RoutedEventHandler(btnTest_Click);
Run Code Online (Sandbox Code Playgroud)

  • 真的MSDN?然后将网址指向我的滑块.-1. (3认同)

Cha*_*u A 10

试试这个:

 button1.AddHandler(Button.ClickEvent, new RoutedEventHandler(button1_Click));
Run Code Online (Sandbox Code Playgroud)

那么你必须创建一个这样的函数

void button1_Click(object sender, RoutedEventArgs e)
    {
        throw new NotImplementedException();
    }
Run Code Online (Sandbox Code Playgroud)


Amb*_*usX 5

如果您要从XAML端添加新事件,IDE将为您完成大部分工作.

例如,如果您输入

<Button Name="button1" Click=
Run Code Online (Sandbox Code Playgroud)

然后IDE会弹出所有当前创建的事件的下拉列表.

您可以选择以前创建的某个事件,也可以通过选择"新事件处理程序"创建一个新事件

如果选择"New Event Handler",则VS会自动在form.xaml.cs C#代码隐藏中为您添加骨架.您只需在已经制作的骨架中添加您想要的click事件.

希望这可以帮助!

  • 当然,这就是我要做的事情,因为我知道事情是如何运作的.不幸的是,抽象最适合能够看透他们的人;) (2认同)