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

C# Discussion :

Afficher les lignes dans le dGV à partir d'une partie de mot saisie dans le TextBox


Sujet :

C#

  1. #1
    Membre régulier
    Homme Profil pro
    étudiant
    Inscrit en
    Septembre 2011
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 342
    Points : 124
    Points
    124
    Par défaut Afficher les lignes dans le dGV à partir d'une partie de mot saisie dans le TextBox
    bonsoir,
    Bonjour,
    je suis entrain de faire une application ,avec lequel je doit effectuer un filtrage (sélection de 1èr et 2ème champ de ma table de la base de données=>code,intitulé) selon le code(de type int),ou l'intitulé(de type string),ou le type (combixBox string) ou (détails TextBox string):

    En fait,mon problème est que j'ai le problème suivant si je cherche les lignes qui commencent par CAP :
    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
    17
    18
    19
    20
    21
          SqlDataAdapter dr;
                    DataSet ds = new DataSet();
    				private void button5_Click(object sender, EventArgs e)
            {   
                int a =int.Parse(textBox1.Text); //erreur Là 
                String b = textBox3.Text;
                String c = comboBox1.SelectedItem.ToString();
                String d = textBox4.Text;
     
                SqlConnection connection = new SqlConnection(connectionString);
                connection.Open();
     
                req="select numero_cpte,intitulé_cpte from compte where numero_cpte="+a+" OR intitulé_cpte='"+b+"' OR type_cpte='"+c+"' OR index_full_text_cpte='"+d+"';";       
                SqlCommand sql = new SqlCommand(req,connection); 
                int o = sql.ExecuteNonQuery();
                MessageBox.Show(o + " succès");
     
                dr = new SqlDataAdapter(req, connection);
                dr.Fill(ds, "compte");
                compteDataGridView.DataSource = ds.Tables["compte"];
                connection.Close();
    l'erreur est dans l'image
    selon vous comment je peut chercher dans ma base à partir d'une partie de mot cherché et merci d'avance
    Images attachées Images attachées  

  2. #2
    Membre éprouvé
    Homme Profil pro
    Architecte technique
    Inscrit en
    Septembre 2005
    Messages
    462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 462
    Points : 1 056
    Points
    1 056
    Par défaut
    Salut,

    Avant de parser en "int" ton champs TextBox... Il serai plus rigoureux de vérifier que le champs est bien un "int".

    Tu peux utiliser : Int32.TryParse qui vérifie et remplie ta valeur si le type est correct !

  3. #3
    Membre régulier
    Homme Profil pro
    étudiant
    Inscrit en
    Septembre 2011
    Messages
    342
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2011
    Messages : 342
    Points : 124
    Points
    124
    Par défaut
    ok katkiller je vais essayer merci

  4. #4
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Au lieu de refaire la requête à chaque fois avec un WHERE:
    - faire un seul load sans WHERE.,
    - binder la DataGridView à la DataTable via un BindingSource,
    - utiliser la propriété "Filter" du BinqingSource pour visualiser les enregistremebnts à filter.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

Discussions similaires

  1. [WD10] Afficher les informations de chaque code à partir d'une table
    Par kadjane01 dans le forum WinDev
    Réponses: 1
    Dernier message: 22/03/2013, 13h32
  2. Réponses: 9
    Dernier message: 09/12/2012, 19h25
  3. Réponses: 6
    Dernier message: 27/09/2011, 16h56
  4. Réponses: 31
    Dernier message: 27/11/2010, 19h14
  5. Réponses: 4
    Dernier message: 04/11/2008, 10h39

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