C# 将数据从windows窗体传递到xaml.cs文件
我正在使用WPF创建我的应用程序,我正在使用formobject.Show()调用windows窗体 从xaml.cs文件C# 将数据从windows窗体传递到xaml.cs文件,c#,wpf,winforms,C#,Wpf,Winforms,我正在使用WPF创建我的应用程序,我正在使用formobject.Show()调用windows窗体 从xaml.cs文件 在表单中,我有接受按钮和取消按钮。如何让xaml.cs文件知道用户在表单中单击了哪个按钮。?因为执行(在#####.xaml.cs中)取决于单击的按钮 您是要执行纯确认/取消评估,还是要评估更复杂的结果?对于取消/确认,您可以使用AcceptButton和CancelButton(仅为方便起见,将Esc和Enter与按钮连接起来)和DialogResult属性按照说明进行操
在表单中,我有接受按钮和取消按钮。如何让xaml.cs文件知道用户在表单中单击了哪个按钮。?因为执行(在#####.xaml.cs中)取决于单击的按钮 您是要执行纯确认/取消评估,还是要评估更复杂的结果?对于取消/确认,您可以使用AcceptButton和CancelButton(仅为方便起见,将Esc和Enter与按钮连接起来)和DialogResult属性按照说明进行操作 更复杂的结果也是以同样的方式完成的,只是您没有设置DialogResult,而是设置一个自定义属性:
public partial class Form1 : Form
{
public string MyProperty { get; set; }
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
MyProperty = "Some complex result";
}
private void button2_Click(object sender, EventArgs e)
{
MyProperty = "Some other complex result";
}
}
关闭模式对话框后,您可以轻松地使用
myWinform.MyProperty
获取XAML.cs文件中的值(实例未被释放,因为您的变量引用了它)。我解决了它,使用了属性
this.DialogResult=DialogResult.OK代码>在表单中
使用
if(confirm.DialogResult.ToString()=“OK”)
检查单击了哪个按钮
@塞巴斯蒂安:谢谢你的建议。你也可以比较(confirm.DialogResult==DialogResult.OK)。以下是可能值的列表: