gpt4 book ai didi

c# - WPF 中的事件处理

转载 作者:太空宇宙 更新时间:2023-11-03 18:40:15 32 4
gpt4 key购买 nike

窗口中有一个按钮btn_Edit。单击该按钮时,将打开一个新窗口 (new_win),并将单击事件添加到 new_win 上的按钮 (btn_OK)。 btn_OK_Click 似乎不起作用,因为 new_win 没有关闭。问题出在哪里?

    BC_edit new_win = new BC_edit();

private void btn_Edit_Click(object sender, RoutedEventArgs e)
{
new_win.Title = "a_title";
new_win.ShowDialog();

new_win.btn_OK.Click += new RoutedEventHandler(btn_OK_Click);
}

private void btn_OK_Click(object sender, RoutedEventArgs e)
{
_MyCollection.Add(new MyData
{
Boundary = new_win.Title,
Type = new_win.cmb_BC_edit_type.SelectedItem.ToString(),
Option = new_win.cmb_BC_edit_options.SelectedItem.ToString()
});

new_win.Close();
}

最佳答案

您需要在显示新窗口之前订阅事件:

    new_win.btn_OK.Click += new RoutedEventHandler(btn_OK_Click);
new_win.ShowDialog();

请记住,ShowDialog 方法是阻塞的:直到窗口关闭它才会返回,因此直到那时才会执行以下语句。

关于c# - WPF 中的事件处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9711377/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com