2011-02-16 29 views
5

Tengo un cuadro de diálogo personalizado que tiene el botón Establecer, quiero cuando salgo de newBlockForm.ShowDialog(this); para obtener el resultado del diálogo si el usuario presiona ese botón o no.Obtener DialogResult del cuadro de diálogo personalizado

Al igual que haría en winforms diálogo

if(MessageBox.Show("Exit?", "Close UP", 
    MessageBoxButtons.YesNo)== DialogResult.Yes) 

alguna idea de cómo hacerlo?

Respuesta

10

Puede utilizar el DialogResult propiedad del botón en el formulario de diálogo y la puso a DialogResult Enumeration como:

//in your dialog form 
button1.DialogResult = DialogResult.OK; 

entonces en su forma principal:

//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 
} 
0

ShowDialog método devuelve una DialogResult por sí mismo que puede configurar automáticamente al DialogResult de los botones en cuestión en su diseñador de formularios.

3

Asigne la propiedad AcceptButton en el formulario al botón Set del diseñador.

O en el botón Establecer haga clic en el controlador puede establecer algún valor.

 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; 
     } 
Cuestiones relacionadas