Extraire une chaine d'un combobox

[Résolu]
Signaler
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012
-
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012
-
Bonjour à tous !

J'ai une combobox dans laquelle ce trouve les noms et prénoms des utilisateurs.

Les items sont donc comme ceci : "NOM Prénom".

Or j'aimerai extraire séparement et mettre dans des variables le nom et le prénom.

Cela me permettra de verifier si le mot de passe saisie correspond au mot de passe de l'utilisateur nom , prénom car dans ma base de données ce sont deux champs distincts.

Merci de m'aider.

6 réponses

Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Petit exemple (rapidement fait) :

private
string[] GetNameAndFirstName(
string fullName)
{
  
// Part du principe que y'a pas de nom avec UNE SEULE lettre
   string[] splittedName = fullName.Split(
' ');
  
int j = 0;
  
for (
int i = 0; i < splittedName.Length; i++)
   {
     
if (
char.IsUpper(splittedName[i][1])) j += splittedName[i].Length + i;
     
else
break;
   }

  
string[] names =
new
string[2];
   names[0] = fullName.Substring(0, j);
   names[1] = fullName.Substring(j + 1, fullName.Length - j - 1);
  
return names;
}
Utilisation :

string fullName =
"AAA BBB Ccc Ddd";

string[] names =
this.GetNameAndFirstName(fullName);

// Résultat
string name = names[0];
// Le nom
string firstName = names[1];
// Le prénom

VC# forever
=13319
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Ca donne donc quelque chose comme ceci :

foreach (
Control control
in myGroupBox.Controls)
{
  
if (control
is
TextBox) control.Text =
string.Empty;
}

VC# forever
=13319
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Salut,
Tu peux faire un split sur l'espace, mais tu auras vraisemblablement un problème pour les noms composés.
Donc s'ils sont écrit en toutes lettres (les noms) fait un split sur les majuscules.

VC# forever
=13319
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012

Merci de ton aide.

Mais ce code me parait trop compliqué. Je dois présenter cette application pour mon bts et je préfere maitriser tout mon code.

Merci encore.

J'ai une autre petite question. J'ai un groupBox contenant de nombreux textbox.
Y a-t-il une fonction qui permet de faire un resetText des textbox par le biais du groupBox.

Au lieu de faire pour chak textbox un reset text J'aimerai un truc du style groupBox.Effacerlestextbox

Merci
Messages postés
5487
Date d'inscription
dimanche 4 août 2002
Statut
Modérateur
Dernière intervention
20 juin 2013
57
Non, tu dois programmer ça toi-même.
Tu peux pour cela utiliser la propriété Controls de ton GroupBox et itérer à l'intérieur de ces Controls.
Chaque fois que tu tomberas sur un Control de type TextBox, tu l'effaces (le contenu).

VC# forever
=13319
Messages postés
59
Date d'inscription
lundi 17 janvier 2005
Statut
Membre
Dernière intervention
16 mai 2012

Merci beaucoup pour ton aide.

A bientot