Bonjour à tous,

Une partie de mon programme consiste à vérifier la valeur de plusieurs TextBox et d'une chaine, par l'intermédiaire de sous-chaines.

Si l'une des sous-chaine ne correpond pas à la valeur qu'on attends, un message derreur s'affiche dans un RichTextBox. Voici la code:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
if(((TBNom.Text.Length < 8) || (TBNom.Text.Length >8) || (TBNom.Text.Length ==0))&&
					( (TBNom.Text.Substring(0,3)!= "LAN") || (TBNom.Text.Substring(0,3) != "MAC") || (TBNom.Text.Substring(0,3)!=" HP") || (TBNom.Text.Substring(0,3) != "FJE") )||
					( (Convert.ToChar(TBNom.Text.Substring(3,1))!='W') || (Convert.ToChar(TBNom.Text.Substring(3,1)) != 'L')||
					(Convert.ToChar(TBNom.Text.Substring(3,1))!= 'S'))||( ( Convert.ToInt16(TBNom.Text.Substring(4,4))>9999) || 
					(Convert.ToInt16(TBNom.Text.Substring(4,4))==0000) )||( (TBNom.Text.Length == 0) || (TBSN.Text.Length ==0) ||
					(TBDE.Text.Length==0) || (TBCde.Text.Length==0)))
				{
					Form1.RTBlog.Text="Attention, erreur(s) sur le nom, Veuillez corriger!\n\nNote à l'utilisateur:\nSI vous voulez enregistrer un matériel en HP"+
						", veillez à saisir un espace avant le HP comme, par exemple: '   HPL0001'";
					this.Close();
				}
Seulement, il semblerais que même si les valeur de toutes les sous-chaine, et de toutes les TextBox sont bonnes, l'execution s'arrete à "this.close".
La suite consiste bien sur à enregistrer les modifications apportées à une ou plusieurs des textBox:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
else
				{
					//Connexion à la base de données:
					Cnx2.ConnectionString = "Data Source=LANS0004; Initial Catalog=HW_INVENTORY; Integrated Security=True";
					SqlCommand cmd;
					string req;
 
 
					//REQUÊTE PARAMETREE POUR LA MISE A JOUR:
					try
					{
						Cnx2.Open();
 
						req = "UPDATE MATERIELS SET Nom=@nom,SN=@sn,Type=@type,Modele=@modele,Site=@site"+
							",Service=@service,Date_Entree=@dateE,Date_Sortie=@dateS"+
							",Fin_Leasing=@fleas,IP=@ip,MAC=@mac,Num_Cde=@cde,Num_Immo"+
							"=@nimmo,Num_Contrat=@con,Date_Inventaire=@inv,Commentaires=@comm "+
							"WHERE ID="+Form1.dataGrid1[Form1.dataGrid1.CurrentCell.RowNumber,0];
 
						cmd = new SqlCommand(req,Cnx2);
 
//ETC,ETC...
En espérant que vous ayez compris mon problème, je vous remercie sincèrement de votre aide.