我从wpf应用程序的页面启动一个窗口,当我在子窗口中按下按钮时,我想调用一个函数
这是调用窗口的页面:
namespace AppWpf10
{
public partial class Prepare : System.Windows.Controls.Page
{
private void button_Click(object sender, RoutedEventArgs e)
{
Choice win2 = new Choice();
win2.Show();
}
public void DoStuff()
{
//CODE THAT DOES STUFF
}
}
}
窗口启动:
namespace appWpf10
{
public partial class Choice : Window
{
private void button1_Click(object sender, RoutedEventArgs e)
{
this.Close();
}
}
}
因此,我希望在另一个窗口中按
DoStuff()
时调用button1
。我该怎么办?通过子窗口在DoStuff()
中调用button1_Click
?还是通过添加事件“在另一个窗口中按下了button1”?无论哪种方式,谁知道怎么写?提前致谢 !
最佳答案
好吧,有很多方法,从外观上看,您并没有走MVVM路线,这很好。因此,在您的特定情况下,一种简单的方法是,在您实际创建子项时,给您命名该按钮,从而订阅该子项的按钮单击事件:
namespace AppWpf10
{
public partial class Prepare : System.Windows.Controls.Page
{
private void button_Click(object sender, RoutedEventArgs e)
{
Choice win2 = new Choice();
win2.Show();
win2.button1.Click += clickEventHandler;
}
private void clickEventHandler(object sender, RoutedEventArgs e)
{
DoStuff();
}
public void DoStuff()
{
//
}
}
}
关于c# - 在其他窗口中单击按钮时调用函数(WPF应用程序),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32091021/