Combo box

speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010 - 22 avril 2008 à 02:22
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008 - 29 juin 2008 à 21:00
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

Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
22 avril 2008 à 15:22
C'est à dire ? Tu veux recuperer l'element selectionné dans ta combobox et l'afficher dans une textbox ou un label ?
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
22 avril 2008 à 16:54
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
0
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
22 avril 2008 à 17:03
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 ^^
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
23 avril 2008 à 00:38
mercie liverion c bon
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
16 juin 2008 à 15:39
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
0
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
16 juin 2008 à 15:51
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 !!
0
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
16 juin 2008 à 16:03
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 ! :{
0
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
16 juin 2008 à 16:05
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 !!
0
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
16 juin 2008 à 16:08
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 !!
0
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
16 juin 2008 à 16:38
Pourrais tu me donner un exemple de cette fonction pour voir comment elle procède sil te plait !?
0
Liverion Messages postés 296 Date d'inscription mardi 22 avril 2008 Statut Membre Dernière intervention 18 août 2008
16 juin 2008 à 16:40
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 !!
0
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
16 juin 2008 à 16:43
c pa grave, merci kan mm pour ces infos!

Vive la programmation
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
16 juin 2008 à 17:05
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;

}

}

 
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
16 juin 2008 à 17:14
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;

}

}
0
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
16 juin 2008 à 17:40
Que signifie la class "cmb" et l'objet "g" de type "generale" ??
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
17 juin 2008 à 01:17
cmb est une class , generale et une class et g de type general
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
17 juin 2008 à 01:32
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(.......)".
0
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
17 juin 2008 à 15:16
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!
0
speed10 Messages postés 46 Date d'inscription jeudi 7 février 2008 Statut Membre Dernière intervention 18 octobre 2010
18 juin 2008 à 00:00
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;

}

}
0
kaydash69 Messages postés 9 Date d'inscription samedi 23 février 2008 Statut Membre Dernière intervention 29 juin 2008
24 juin 2008 à 16:12
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
0
Rejoignez-nous