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 :

[BindingSource] Il y a pas plus simple pour récupérer la valeur d'un champs ?


Sujet :

Windows Forms

  1. #1
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut [BindingSource] Il y a pas plus simple pour récupérer la valeur d'un champs ?
    Salut

    Actuellement j'utilise la méthode suivante pour récupérer la valeur d'une colonne bien déterminé de l'enregistrement courant d'un BindingSource.

    formfacturelist est un BindingSource.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     PropertyDescriptor IDPropertyDescriptor = formfacturelist.GetItemProperties(null)["Numero"];
    string numero = (string)IDPropertyDescriptor.GetValue(formfacturelist.Current);
    exits il une autre méthode plus simple avec une seul ligne de code ou on peut accéder directement a la valeur d' champ.

    merci.

  2. #2
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Quelque chose dans ce genre, à adapter en fonction du type de l'objet évidemment.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string numero = ((MonType)formfacturelist.Current).Numero;

  3. #3
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    à ne marche pas, étant que Numéro n'est pas défini.

  4. #4
    Expert éminent
    Avatar de StormimOn
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2005
    Messages
    2 593
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Sarthe (Pays de la Loire)

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

    Informations forums :
    Inscription : Mai 2005
    Messages : 2 593
    Points : 7 660
    Points
    7 660
    Par défaut
    Citation Envoyé par StormimOn Voir le message
    ... à adapter en fonction du type de l'objet ...
    Si ton objet est une DataTable accède à la colonne qui t'intéresse, ... Bref adapte en fonction du contexte

  5. #5
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    merci pour votre réponse.
    Citation Envoyé par StormimOn Voir le message
    Si ton objet est une DataTable accède à la colonne qui t'intéresse, ... Bref adapte en fonction du contexte
    j'ai du mal a vous suivre, mon Objet est un BindingSource suite a une recherche avec Find je voudrais récupérer la valeur du champs Find, j'arrive a bien le faire avec la méthode que j'ai cité mais c'est pas très pratiques vu que c'est un traitement courant.

  6. #6
    Membre émérite Avatar de Guulh
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    2 160
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Septembre 2007
    Messages : 2 160
    Points : 2 925
    Points
    2 925
    Par défaut
    Citation Envoyé par aityahia Voir le message
    j'ai du mal a vous suivre, mon Objet est un BindingSource suite a une recherche avec Find je voudrais récupérer la valeur du champs Find
    Oui mais ce BindingSource, il récupère bien ces données quelque part, non ? Lui même ne porte pas les données ; il redirige vers la véritable source. Les deux cas les plus courants :
    - ou ce BS est connecté à une DataTable, auquel cas il suffit de récupérer le DataRow courant puis son champs numéro : (string) ((DataRow)formfacturelist.Current)["Numero"]
    - ou ce BS est connecté à une liste d'objets métiers de type MonType (avec MonType qui a une propriété Numero) : ((MonType)formfacturelist.Current).Numero

  7. #7
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Merci pour votre réponse.

    Voila dans mon projet j'ai un data
    Source qui englobe toute ma base de donnée un TableAdabter et mon Bindingsource.
    je suis tous nouveau au DotNet alors je présume que je doit appliquer la première méthode.

  8. #8
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    Bingo ça marche j'ai juste remplacer DataRow avec DataRowView suite une exception de cast que voici.

    Impossible d'effectuer un cast d'un objet de type 'System.Data.DataRowView' en type 'System.Data.DataRow'.
    humm je croit je doit me documenté encore un peut sur la manipulation des données avant de me lancer dans la réalisation de mon projet.

    Merci beaucoup.

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

Discussions similaires

  1. Le plus simple pour créer un service web ?
    Par goeland444 dans le forum Services Web
    Réponses: 0
    Dernier message: 22/07/2008, 15h43
  2. y'a pas plus simple ?
    Par g0up1l dans le forum Langage SQL
    Réponses: 9
    Dernier message: 16/05/2007, 11h15
  3. [Quartz] Quartz 2D le moyen le plus simple pour les images
    Par NiamorH dans le forum Développement OS X
    Réponses: 6
    Dernier message: 02/05/2007, 17h34
  4. API pour récupérer la valeur d'un champ Edit
    Par buteiduil dans le forum Windows
    Réponses: 4
    Dernier message: 15/05/2005, 22h32
  5. Pipes => pas plus simple ?
    Par Jorus dans le forum MFC
    Réponses: 4
    Dernier message: 02/02/2005, 17h53

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