IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

[C# ComboBox-Bdd]rendre null une valeur dans une base


Sujet :

Windows Forms

  1. #1
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut [C# ComboBox-Bdd]rendre null une valeur d'une combobox lie a une table de bdd
    Salut a tous,

    Voila mon pb j'ai une base de données avec des liens vers des tables annexes
    par exemple une table client avec une jointure vers une table civilité (madame, monsieur, ...)

    dans ma fenetre j'ai une liste en lecture seul sur le premier onglet, sur le 2eme onglet mes textbox et autres combo qui me permettent de saisir mes données sur le client.
    le binding ce fait sur le dataset que j'utilise comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Cbo_CIVNUM.DataBindings.Clear();
    Cbo_CIVNUM.DataSource = ds.T_CIVILITE;
    Cbo_CIVNUM.DisplayMember = "CIVLIB";
    Cbo_CIVNUM.ValueMember = "CIVNUM";
     
    Cbo_CIVNUM.DataBindings.Add("SelectedValue",ds.T_CLIENT,"CIVNUM");
    Voila tout fonctionne comme il faut, si je selectionne une civilite => je valide => la base est bien mise à jour.

    Seulement voila admettons que je souhaites supprimer la civilite de mon client.
    Naturellement je me positionne sur mon client et j'appuie sur la touche Supp en étant sur ma combo civilite le texte se supprime mais ca n'affecte pas la valeur NULL a mon Dataset => Après validation ma civilité est toujours présente au lieu du jolie petit null que j'aurais du avoir dans ma table

    j'utilise les combo standard windows, avec dataset typee, la colonne civilite est a null autorisée...

    bref une fois une civilite choisie plus moyen de revenir en arriere et de remetre le champ a NULL

    Y-t-il une manip une option sur la combo pour forcer le null a mon dataset ???
    ou dois je le faire a la main ?

    Merci a vous !!

  2. #2
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    personne n'utilise les combobox binder a une table ?

    c bizarre je ne trouve trace de ce pb nulle part...

  3. #3
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    un petit up pour mon pb....

  4. #4
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    il semblerait que ce comportement est normal...
    kkun aurait une idée simple a mettre en place pour forcer le NULL sur ma combo ?

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 57
    Points : 57
    Points
    57
    Par défaut
    Une idée de piste :

    Peut être car la liaison entre les deux tables est déclaré obligatoire ?
    Et donc le datagrid se conforme à ce schéma et empêche de supprimer une liaison ?

  6. #6
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    non en fait au depart je n'ai pas de valeur

    le null est autoriser sur la foreign key...
    c'est pas ca malheuresement

    le pb survient qd j'ai selectionner une valeur dans ma combo plus moyen de repasser a null...pas d'erreur qui claque c'est juste impossible...

  7. #7
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    en gros j'aimerais pouvoir appuyer sur la touche Suppr sur ma combo et que la mon gentil dataset passe la valeur de ma foreign key a NULL

    je pensais que ce traitement serais standard sur une combo....

  8. #8
    Membre régulier Avatar de arthenius
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2005
    Messages
    107
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 107
    Points : 120
    Points
    120
    Par défaut
    Bon ben j'ai trouver une solution a mon Pb

    sur chaque combo je rajoute ce petit bout de code sur le keydown :
    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
     
    private void Cbo_TAXNUM_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {
    	try 
    	{
    		if(e.KeyCode == Keys.Delete && CM_T_ARTICLE.Count > 0)
    		{
    			DataRowView row = (DataRowView) CM_T_ARTICLE.Current;
    			row["TAXNUM"]= DBNull.Value;
    		}
    	}
    	catch(Exception xcp)
    	{
    		Outils.Fonction.Aff_Err("'Cbo_TAXNUM_KeyDown' : " + xcp.Message);
    	}
    }
    ainsi quand j'appuie sur ma touche suppr je force la valeur de mon dataset a NULL et voilou...

  9. #9
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2008
    Messages
    337
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Septembre 2008
    Messages : 337
    Points : 456
    Points
    456
    Par défaut
    Merci pour cette solution qui fonctionne très bien!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. quand je selectionne une valeur dans une liste, retourne une autre valeur
    Par nsqualli dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 29/12/2008, 14h23
  3. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  4. Réponses: 1
    Dernier message: 25/09/2006, 17h15
  5. Mettre une valeur d'une table dans une variable
    Par Raphou96 dans le forum Access
    Réponses: 5
    Dernier message: 06/02/2006, 15h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo