Combo box

Signaler
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010
-
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008
-
salut,

je suis entraint de realiser une application avec c# vs2003 et je veux afficher dans une zone text des données à partir d'un combobox,svp aider moi!!!!!!!!
merci

23 réponses

Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

C'est à dire ? Tu veux recuperer l'element selectionné dans ta combobox et l'afficher dans une textbox ou un label ?
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

oui ,je veux une fois que je selectionne un item dans la combobox les donnes qui coresponde à cette item dans la base sqlServer s'affiche dans le textbox
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

Si tu utilise une commande String getSqlData(String nameOfItem) tu dois pouvoir faire :

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    textbox.Text = getSqlData(comboBox1.SelectedItem.toString());
}

après je sais pas comment tu recuperes tes données SQL ^^
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

mercie liverion c bon
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

coucou les gens,


J'ai pa compris la commande String getSqlData ce que qu'elle veut signifier? :(

Pourriez vous m'expliquer un peu pluss de details svpp
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

C'etait un nom de fonction que j'avais mis là pour montrer comment il pouvait récuperer l'item selectionné dans sa comboBox pour aller chercher des données dans sa Base de Données SQL associée, mais je pense pas qu'une telle fonction existe vraiment, c'etait pour illustrer.

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

ahh daccord,
donc, d'apres ce ke j'ai compris, il faut utiliser une fonction que nous, nous devons la créer pour faire ca :
{
textbox.text =  fonction crée (combobox1.SelectedItem.ToString();
}

et bien justement, que signifie cette fonction crée ?? c la ke j'ai pas compris ! :{
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

oui, ou tu le fais en plusieures lignes dans la gestion de l'évènement , mais c'est effectivement plus propre de le faire dans une fonction a part que tu vas appeler après  ;)

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

Oups, pas vu la deuxieme question, en fait ce que lui voulais faire, c'etait que l'utilisateur choisisses dans l'interface sur une liste quelque chose qu'il avait envie de voir, le programme allait alors chercher les infos qui etaient contenues dans la base de données a propos de cette chose et renvoyer ca en texte (en orange ce que la fonction crée doit faire) pour ensuite l'afficher dans un textBox.

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

Pourrais tu me donner un exemple de cette fonction pour voir comment elle procède sil te plait !?
Messages postés
296
Date d'inscription
mardi 22 avril 2008
Statut
Membre
Dernière intervention
18 août 2008

Je sais pas du tout, mais je pense qu'il doit y avoir pas mal de tutoriaux sur les echanges avec les Bases De Données (BDD). Moi j'ai jamais utilisé pour l'instant en C# donc me suis pas penché dessus  ;)

~~
Les trois lois de Codes-Sources :
Loi 1) Tu lis et respectes le reglement
Loi 2) Tu penses à valider si une reponse apportée à ton problème t'a aidé
Loi 3) Si tu ne respectes pas les 2 premières ....TU SORS !!
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

c pa grave, merci kan mm pour ces infos!

Vive la programmation
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

bonjour,

tu peux essayer avec ce code:
private SqlConnection MaSqlCnx = new SqlConnection();

private void Form_Load(object sender, System.EventArgs e)

{
MaSqlCnx.ConnectionString "server SN101621320321;.......................";

 ///combo box

try

{

MaSqlCnx.Open( );

SqlCommand SqlCmd=new SqlCommand();

SqlCmd.Connection = MaSqlCnx;

SqlCmd.CommandText = "requete sql" ;

SqlDataReader SqlDR = SqlCmd.ExecuteReader();

cmb1.Items.Clear();

while(SqlDR.Read())

{

cmb1.Items.Add(SqlDR.GetValue(0).ToString()) ;

}

SqlDR.Close();

MaSqlCnx.Close( ));

}

catch(System.Exception ex)

{

MsgError.Text=ex.Message;

}

}

/// 2ieme combo

private void cmb2_SelectedIndexChanged(object sender, System.EventArgs e)

{

try

{

MaSqlCnx.Open( );

SqlCommand SqlCmd=new SqlCommand();

SqlCmd.Connection = MaSqlCnx;

SqlCmd.CommandText = "select  id2  from util where id1=cmb.Text" ;

SqlDataReader SqlDR = SqlCmd.ExecuteReader();

cmb2.Items.Clear();

while(SqlDR.Read())

{

cmb2.Items.Add(SqlDR.GetValue(0).ToString()) ;

}

SqlDR.Close();

MaSqlCnx.Close( ));

}catch(System.Exception ex)

{

MsgError.Text=ex.Message;

}

}

 
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

bonjour
je me suis trope de sujet voila le code

class generale
{
///constructeur
gnerale
{}
public void Modifier(string s,SqlConnection g,TextBox txt)

{

SqlCommand SqlCmd=new SqlCommand();

SqlCmd.Connection = g;

SqlCmd.CommandText = s ;

SqlDataReader SqlDR = SqlCmd.ExecuteReader();

while(SqlDR.Read())

{

txt.Text=SqlDR.GetValue(0).ToString() ;

}

SqlDR.Close();

}
}

class cmb
{
generale g=new generale();

private void cmbMatricule_SelectedIndexChanged(object sender, System.EventArgs e)

{

try

{

cnx.Open();

///txtName==> zone text ou en va afficher le selected item

g.Modifier("select NmUtil from T_Utilisateur where MtrUtil='"+cmbMatricule.SelectedItem+"'",cnx,txtName);

cnx.Close();}

catch(System.Exception ex)

{

MsgError.Text=ex.Message;

}

}
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

Que signifie la class "cmb" et l'objet "g" de type "generale" ??
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

cmb est une class , generale et une class et g de type general
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

bonsoir,
pour la classe general, elle contient la methode modifier que j ai fait appele à elle ensuite dans la classe cmb plus precisement dans la methode cmbMatricule_SelectedIndexChanged pour recupere l item selectionner et l afficher dans la zone text txtName, la methode Modifier prend en parametre la requete,la connexion et la zone text ou on va afficher l item selectionner.
et pour l objet g , j ai utilise pour faire appel au methode modifier "generale g=new generale();" "g.Modifier(.......)".
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

tiens, ca me parait bizzare, j'ai fait comme en haut :
- j'ai crée une class dans laquelle se trouve une méthode pour modifier les texbox
- + une autre class dans laquelle il y a l'evenement "SelectedIndex_Changed" et que l'on enclenchera la fonction modifier de lautre classe

Cependant, dans la classe où il y a l'evenement, je n'ai pas accés à la connexion pour faire un "connection.open( )" afin d'ouvrir la connexion. J'ai bien declaré un objet "connection" de type SqlConnection en precisant bien mon datasourse, database, Trusted_connection dans l'autre page qui est Form1.Designer.cs !

Auriez-vous une idée de l'erreur ?? J'en suis sur que c'est un truc bete!
Messages postés
46
Date d'inscription
jeudi 7 février 2008
Statut
Membre
Dernière intervention
18 octobre 2010

tu peux creer une methode dans la quelle tu peux mettre la cnx dans la classe qui contient la database comme par exemple
public

private

SqlConnection MaSqlCnx =
new
SqlConnection();public

void Connexion(){
MaSqlCnx.ConnectionString "server SN101621320321;database=Gest_Intv_Process;uid=Process;pwd=process**01";}

public
SqlConnection getCnx(){

return MaSqlCnx;}

public

void open(
SqlConnection s){

if (s.State ==
ConnectionState.Close){

s.Open();

}

}

et pour la classe qui contient  l evenement
private

void Modifier_Load(
object sender, System.
EventArgs e){

// connexion à la baseg.Connexion();

///combo box

try{

g.open(g.getCnx());
.................

 

}

catch(System.
Exception ex){

MsgError.Text=ex.Message;

}

}
Messages postés
9
Date d'inscription
samedi 23 février 2008
Statut
Membre
Dernière intervention
29 juin 2008

salut,

Normalement, avec ce bout de code, cela devrait fonctionner :

///////////////////////////essai////////////////////////

namespace essai02
{
    public partial class essai : Form
    {
        SqlConnection _sqlconnexion = new SqlConnection();
       
        public essai()
        {
            InitializeComponent();
        }


        public void connexion_bdd()
        {
            _sqlconnexion.ConnectionString = "Data Source=PC-DE-SOURINTHO; Database=EUROTECH_France; Trusted_Connection=true";
        }


        public void modifier(string requete, SqlConnection connexion, TextBox text)
        {
            SqlCommand Sqlcmd = new SqlCommand();
            Sqlcmd.Connection = connexion;
            Sqlcmd.CommandText = requete;


            SqlDataReader ligne = Sqlcmd.ExecuteReader();


            while (ligne.Read())
            {
                text.Text = ligne["nom"].ToString();
            }
            ligne.Close();
        }


        private void client_box_SelectedIndexChanged(object sender, EventArgs e)
        {
            connexion_bdd();
            _sqlconnexion.Open();
            modifier("SELECT * FROM Feuil1$ WHERE Société = '" + client_box.SelectedItem + "'", _sqlconnexion, client_text);
        }




    }
}

///////////////Fin essai//////////

Normalement, rien que cela, le programme d'essai devrait m'afficher une liste de client dans le combobox puis en fonction du client, son nom, mais il m'affiche rien. A votre avis, d'où vient le probleme ?? J'ai tjrs pa trouvé la solution et je cherche tjrs