quit-confirmation-windowのコンストラクタに、そのオプションが選択されたときに閉じるべきウィンドウへの参照を渡せませんでしたか?
編集:それを行う方法の2つの例:
多くの場合、あなたは、ウィンドウが閉じているときにこのようなClosingイベントハンドラでそれを作成したいので、確認-対話を開くしたいと思います:
private void Window_Closing(object sender, CancelEventArgs e)
{
ConfirmationDialog diag = new ConfirmationDialog();
diag.ShowDialog();
switch (diag.Result)
{
...
}
}
ここにあなたの窓は、それはあなたが対話自体にウィンドウに関する情報を必要としない場合であれば、(diag.Show
は待たないでしょう)を返すように確認ダイアログを待ちます。あなたの対話がいつでも開かれ、それが返すことのためにあなたは待つことができないあなたが参照してそれを作成することができた場合は
(Result
はDialogResult
ブール値が十分に区別されていない場合は、あなたの対話の中で定義することができますカスタムプロパティです):
private void OpenConfirmDialog()
{
ConfirmationDialog diag = new ConfirmationDialog(this);
diag.Show()
}
とあなたの対話のコードで:
public ConfirmationDialog(Window owner)
{
Owner = owner;
}
public void OpenWelcomeScreenThing()
{
this.Close();
Owner.Close();
new WelcomeScreen().Show();
}
またはそのような何か。あるいは、イベントを扱うこともできます。
もう少し具体的に分かりますか? – CodeMouse92
私の答えは例で更新されました。 (実際にあなたが明確にすべき人です) –
実際、それは私が必要としていたものです。私はカスタムダイアログから結果を得ることができないことを忘れていました。ありがとう、そして神は祝福! – CodeMouse92