2012-03-29 3 views
1

に形成し、私は(formobject.Showを使用して、Windowsフォームを呼び出しています窓からのデータを渡すでは、xaml.csファイルから )私は自分のアプリケーションを作成するためのWPFを使用していxaml.csファイル

受諾ボタンとキャンセルボタンがあるフォーム。 xaml.csファイルで、ユーザーがどのボタンをクリックしたかをフォームで確認する方法実行(###。xaml.cs)はクリックされたボタンによって異なります。

答えて

2

私は、それを解決した形で

this.DialogResult = DialogResult.OK;

をプロパティを使用してため

@SebastianおかげでクリックされたボタンをチェックするためにCSファイルで

if (confirm.DialogResult.ToString() == "OK")を使用アイディア。

+1

また、(confirm.DialogResult == DialogResult.OK)を比較することもできます。可能な値の一覧は次のとおりです。http://msdn.microsoft.com/en-us/library/system.windows.forms.dialogresult.aspx –

1

純粋な確認/キャンセル評価をしたいのですか、より複雑な結果を評価しますか?キャンセル/確認の場合は、hereのように、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"; 
    } 
} 

あなたは簡単にあなたのXAMLの値を取得するためにmyWinform.MyPropertyを使用することができます。モーダルダイアログが閉じられると(インスタンスが破棄されず、変数がそれを参照しているため)、csファイルに保存されます。

関連する問題