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

コードのスニペットを理解するのは難しいです。ただし、これを実現する簡単な方法は、y フォームの Close ハンドラーの UI で現在選択されている値に設定する SelectedEmployer プロパティを作成することです。次に、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"; } }

次に、ダイアログとして開くだけで、必要な結果が得られます。

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