2010-01-14 5 views
1

Bonjour j'appelle un MessageBox lors de la validation des données, si les données sont mal je un message à l'utilisateur un MessageBox avec le code suivant:accident App lorsque vous appelez MessageBox

private void button1_Click(object sender, EventArgs e) 
{ 
    if (textBox_name.Text.Trim() != "" 
     || textBox_X.Text.Trim() != "" 
     || textBox_Y.Text.Trim() != "") 
    { 
     if (graph.getNodoNome(textBox_nome.Text.Trim()) != null) 
     { 
      MessageBox.Show("Data is wrong?", "Error"); 

      resetTextBoxes(); 
      return; 
     } 

    // randome stuff 
    } 
} 

Mon accident d'application avec cela, quand je supprimer le MessageBox fonctionne très bien. Merci pour l'aide

EDIT: lien Pastebay pour toute méthode http://pastebay.com/82690

+7

Qu'est-ce que t? Le message d'erreur/exception que vous obtenez quand le programme se bloque? –

+1

Fait un essai attraper sur le MessageBox, ne dit rien. Crash simple. – Ricardo

+0

Qu'en est-il du formatage correct de votre code? * Comment l'application plante-t-elle (quelle exception est lancée)? – AndiDog

Répondre

1

Vous devez mentionner le type d'exception.

Puisque je ne peux pas supposer cela, je commenterai sur d'autres sources potentielles d'erreur?

Honnêtement aussi, votre

 if (textBox_nome.Text.Trim() != "" 
      || textBox_X.Text.Trim() != "" 
      || textBox_Y.Text.Trim() != "") 

devrait être

 if (textBox_nome.Text.Trim() != "" 
      && textBox_X.Text.Trim() != "" 
      && textBox_Y.Text.Trim() != "") 

pour que tous les champs sont remplis.

Int.Parse lancera si invalide, je suggère (en pseudo C#):

int x; 
if(!int.TryParse(text, out x)) x = 0; // some default value 
+0

Merci pour votre réponse. En ce moment, je suis un peu à l'heure, mais je vais vérifier cela dès que possible. Je pense que ça pourrait être ça – Ricardo

0

Je pense que nous avons besoin de plus d'informations sur les parties « graph.getNodoNome » et « trucs radôme ». Si vous commentez ces lignes, cela fonctionne très bien. Je garantis à peu près la boîte de message n'est pas le problème. Je parierais que c'est la méthode getNodoNome ou les trucs aléatoires qui vous arrivent.

1) Commentez-les tous les deux, et voyez si cela "se bloque". 2) Uncomment le premier « graph.getNodoNome » et voir si elle se bloque 3) Commentaire sur « graphique ... » décommenter « trucs radôme » et voir si elle se bloque

Si vous n'êtes pas de recevoir des messages d'erreur, vous devez prendre des mesures de bébé.

+0

graph.getNodoNome (chaîne N) trouve et renvoie un objet, s'il n'est pas trouvé, il renvoie null. Si je commente le "MessageBox.Show (" Les données sont fausses? "," Erreur ");" et je fais la condition IF vrai, il n'y a pas d'erreurs et le resetTextBoxes() fonctionne bien. – Ricardo

+0

Le graphique provient-il d'une bibliothèque tierce ou s'agit-il d'un code que vous avez écrit? Si une bibliothèque tierce, laquelle? – Nick

+0

Mon propre code. Merci pour toutes les personnes d'aide – Ricardo

Questions connexes