我有一些自定義的對話框,它有它設置按鈕,我想當我退出newBlockForm.ShowDialog(this);
獲得對話結果,如果用戶按下該按鈕或沒有。從自定義對話框中獲取DialogResult
就像我會在做的WinForms對話框
if(MessageBox.Show("Exit?", "Close UP",
MessageBoxButtons.YesNo)== DialogResult.Yes)
任何想法,我該怎麼辦呢?
我有一些自定義的對話框,它有它設置按鈕,我想當我退出newBlockForm.ShowDialog(this);
獲得對話結果,如果用戶按下該按鈕或沒有。從自定義對話框中獲取DialogResult
就像我會在做的WinForms對話框
if(MessageBox.Show("Exit?", "Close UP",
MessageBoxButtons.YesNo)== DialogResult.Yes)
任何想法,我該怎麼辦呢?
您可以使用您的對話框窗體上按鈕的DialogResult屬性,並將其設置爲DialogResult Enumeration,如:
//in your dialog form
button1.DialogResult = DialogResult.OK;
然後在您的主要形式有:
//Create an instance of your dialog form
Form2 testDialog = new Form2();
// Show testDialog as a modal dialog and determine if DialogResult = OK.
if (testDialog.ShowDialog(this) == DialogResult.OK)
{
//do processing
}
else
{
//do processing
}
ShowDialog
方法返回一個DialogResult
通過本身,您可以通過在表單設計器中設置DialogResult
這些按鈕來自動設置。
將表單上的AcceptButton
屬性映射到設計器中的Set
按鈕。
或者在設置按鈕點擊處理程序中,您可以設置一些值。
private void HandleOnSetButtonClick(object sender, EventArgs e)
{
this.IsSetClicked = true;
this.Close();
//or
this.DialogResult = System.Windows.Forms.DialogResult.OK;
this.Close();
}
public Boolean IsSetClicked
{
get;
private set;
}