0

这是自定义 winform 类的一部分:

public partial class frmFindAppointments {
    public virtual void Init(int patientId, bool booleanValue) {
        // will receive the patientId
    }

    public delegate void goToCalendarHandler();
    public goToCalendarHandler goToCalendar;
}

在父窗口中,我添加了雇主的名称,当我关闭父窗口时y,我想在子窗口中选择它。xy

我试过了

using(frmFindAppointments frm=new frmFindAppointments()) {
    frm.goToCalendar+=new frmFindAppointments.goToCalendarHandler(GoToCalendar);
    frm.Init(Patient.Id, false);
    frm.ShowDialog(this);
}
4

2 回答 2

1

好吧,我很难理解你的代码片段。但实现这一点的简单方法是创建一个 SelectedEmployer 属性,您在 y 表单的 Close 处理程序中将其设置为 UI 上的当前选定值。然后在 X 表单中,即使表单 y 已关闭,只要您保持对 y 表单的引用,您始终可以检索此值。这对你有用吗?

于 2013-01-08T18:24:04.803 回答
0

使用您需要返回的一些公共属性创建子窗口。喜欢:

public CForm : Form {
    public string Result { get; private set; } }

然后在完成后设置该属性:

public CForm : Form {
    public void Finished() { Result = "all okay"; } }

然后只需打开 is as dialog 并获得您需要的结果:

using (CForm form = new CForm)
{
    form.ShowDialog();
    string dialogResult = form.Result; // Here you are.
}
于 2013-01-08T18:25:58.613 回答