Problème datasource usercontrol

cs_dreamkill Messages postés 14 Date d'inscription samedi 17 décembre 2005 Statut Membre Dernière intervention 19 juin 2009 - 19 juin 2009 à 13:55
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 - 21 juin 2009 à 21:29
Bonjour,

J'ai créer un user control dans lequel il y a une combobox, je souhaite
remplir la combobox grâce à ma base de données donc j'utilise
datasource dans les propriété de la combobox je choisi mon Display
Member et mon value member, lorsque je fais le preview j'ai bien mes
champs mais lorsque je lance mon appli il n'y a rien dans ma combo.

J'ai essayé de créer une combo dans ma form principale en utilisant le
même datasource que précédemment et là ma combo est rempli..
Comment faire pour que la combo de mon usercontrol soit aussi rempli?

Merci

10 réponses

cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 juin 2009 à 16:47
Bonjour,
Un peu de code serait utile...

<hr />
-Blog-
-Site Perso-
0
cs_dreamkill Messages postés 14 Date d'inscription samedi 17 décembre 2005 Statut Membre Dernière intervention 19 juin 2009 1
19 juin 2009 à 17:14
D'accord mais quel partie car j'ai tout créer en utilisant le wizard Datasource dans les propriété de la combobox.
Ce wizard m'a créer un dataset,, Bindingsource  et TableAdapter
 voilà ma chaine de connection
connectionString="Data Source=ID;Initial Catalog=licence;Integrated Security=True"

Voilà le code du designer de mon usercontrol
        private System.Windows.Forms.ComboBox comboBox1;
        private System.Windows.Forms.BindingSource companyBindingSource;
        private licenceDataSet licenceDataSet;
        private test_datasource.licenceDataSetTableAdapters.companyTableAdapter companyTableAdapter;
        private System.Windows.Forms.BindingSource companyBindingSource1;
        private licenceDataSet1 licenceDataSet1;
        private test_datasource.licenceDataSet1TableAdapters.companyTableAdapter companyTableAdapter1;

Et sinon quelle partie du code pourrait aider ?

Merci
0
cs_dreamkill Messages postés 14 Date d'inscription samedi 17 décembre 2005 Statut Membre Dernière intervention 19 juin 2009 1
19 juin 2009 à 17:29
Du côté du designer de ma combobox j'ai ca

private void InitializeComponent()
        {
            this.components = new System.ComponentModel.Container();
            this.comboBox1 = new System.Windows.Forms.ComboBox();
            this.licenceDataSet = new test_datasource.licenceDataSet();
            this.companyBindingSource = new System.Windows.Forms.BindingSource(this.components);
            this.companyTableAdapter = new test_datasource.licenceDataSetTableAdapters.companyTableAdapter();
            this.licenceDataSet1 = new test_datasource.licenceDataSet1();
            this.companyBindingSource1 = new System.Windows.Forms.BindingSource(this.components);
            this.companyTableAdapter1 = new test_datasource.licenceDataSet1TableAdapters.companyTableAdapter();
            ((System.ComponentModel.ISupportInitialize)(this.licenceDataSet)).BeginInit();
            ((System.ComponentModel.ISupportInitialize)(this.companyBindingSource)).BeginInit();
            ((System.ComponentModel.ISupportInitialize)(this.licenceDataSet1)).BeginInit();
            ((System.ComponentModel.ISupportInitialize)(this.companyBindingSource1)).BeginInit();
            this.SuspendLayout();
            //
            // comboBox1
            //
            this.comboBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.companyBindingSource, "nom", true));
            this.comboBox1.DataSource = this.companyBindingSource1;
            this.comboBox1.DisplayMember = "nom";
            this.comboBox1.FormattingEnabled = true;
            this.comboBox1.Location = new System.Drawing.Point(28, 24);
            this.comboBox1.Name = "comboBox1";
            this.comboBox1.Size = new System.Drawing.Size(121, 21);
            this.comboBox1.TabIndex = 0;
            this.comboBox1.ValueMember = "cid";
            //
            // licenceDataSet
            //
            this.licenceDataSet.DataSetName = "licenceDataSet";
            this.licenceDataSet.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
            //
            // companyBindingSource
            //
            this.companyBindingSource.DataMember = "company";
            this.companyBindingSource.DataSource = this.licenceDataSet;
            //
            // companyTableAdapter
            //
            this.companyTableAdapter.ClearBeforeFill = true;
            //
            // licenceDataSet1
            //
            this.licenceDataSet1.DataSetName = "licenceDataSet1";
            this.licenceDataSet1.SchemaSerializationMode = System.Data.SchemaSerializationMode.IncludeSchema;
            //
            // companyBindingSource1
            //
            this.companyBindingSource1.DataMember = "company";
            this.companyBindingSource1.DataSource = this.licenceDataSet1;
            //
            // companyTableAdapter1
            //
            this.companyTableAdapter1.ClearBeforeFill = true;
            //
            // combo
            //
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.Controls.Add(this.comboBox1);
            this.DataBindings.Add(new System.Windows.Forms.Binding("Tag", this.companyBindingSource, "nom", true, System.Windows.Forms.DataSourceUpdateMode.Never));
            this.Name = "combo";
            ((System.ComponentModel.ISupportInitialize)(this.licenceDataSet)).EndInit();
            ((System.ComponentModel.ISupportInitialize)(this.companyBindingSource)).EndInit();
            ((System.ComponentModel.ISupportInitialize)(this.licenceDataSet1)).EndInit();
            ((System.ComponentModel.ISupportInitialize)(this.companyBindingSource1)).EndInit();
            this.ResumeLayout(false);
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 juin 2009 à 17:32
Mets un breakpoint où le binding est fait dans le UserControl, vérifie les valeurs que tu obtiens, la connection à la base de donnée, etc.
Si ta combo fait partie d'un UC, il faut un moment où un autre lui dire de se remplir (binding), tu le fais où ça?

<hr />
-Blog-
-Site Perso-
0

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

Posez votre question
cs_dreamkill Messages postés 14 Date d'inscription samedi 17 décembre 2005 Statut Membre Dernière intervention 19 juin 2009 1
19 juin 2009 à 17:37
this.comboBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.companyBindingSource, "nom", true));

Losrque je fais ca c'est sensé remplir la combo non ?
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 juin 2009 à 17:39
Ok, me rappelle plus trop comment fonctionne BindingSource, mais doit y'avoir une méthode Add pour ajouter les binding non, tu l'as fait ça?

<hr />
-Blog-
-Site Perso-
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 juin 2009 à 17:40
Oui voilà c'est ce que je voulais (sorry je réponds toujours avec un temps de retard ).
Cette ligne tu l'as mise à quel endroit?

<hr />
-Blog-
-Site Perso-
0
cs_dreamkill Messages postés 14 Date d'inscription samedi 17 décembre 2005 Statut Membre Dernière intervention 19 juin 2009 1
19 juin 2009 à 17:44
C'est dans le code que j'ai donné précédemment ds le designer de la combobox

Ce que je comprend pas c'est pourquoi tout fonctionne niquel lorsque je met la combobox dans la form mais lorsque j'utilise le Usercontrol ca marche plus alors que c'est le wizard qui créer tout.. et lorsque je fais un preview data via la combo j'ai bien ce que je veux..
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
19 juin 2009 à 18:07
Hum, pour le moment je ne sais pas...

<hr />
-Blog-
-Site Perso-
0
cs_Bidou Messages postés 5487 Date d'inscription dimanche 4 août 2002 Statut Membre Dernière intervention 20 juin 2013 61
21 juin 2009 à 21:29
J'ai fait un petit teste ce week-end, j'ai pas rencontré spécialement de problèmes...
(Essayer avec le usercontrol)

<hr />
-Blog-
-Site Perso-
0
Rejoignez-nous