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 :

Refiltrer après avoir annulé le filtre.


Sujet :

Windows Forms

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2007
    Messages : 56
    Points : 35
    Points
    35
    Par défaut Refiltrer après avoir annulé le filtre.
    Salut à tous. J'ai 2 DatagridView liées et 2 ComboBox dont l'une d'elles "cboAnnéePriseCongé" me permet d'effectuer un filtre (j'ai utilisé un code de "GDal" que j'ai trouvé sur ce Forum).
    Mon problème est que lorsque je veux refiltrer après avoir annulé mon filtre, ça marche pas et la DataGridView reste inchangée !

    La fonction de filtrage :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Function fctFiltreCongésParAnnées(ByVal objDataSet As DataSet, ByVal strNomTable AsString, ByVal strFiltre AsString)
     Dim objDataView AsNew DataView
     strFiltre = "Nom = '" & cboNom.Text & "' And AnnéeCessation = " & cboAnnéePriseCongé.Text & ""
     With objDataView
    ' Charger la table dans le DataView
       .Table = GRHDataSet1.reqTblCongésAvecNomPrénom
       .RowFilter = strFiltre
     End With
     Me.TblPersonnelreqTblCongésAvecNomPrénomBindingSource.DataSource = objDataView
    End Function
    Appel de la fonction de filtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub cboAnnéePriseCongé_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboAnnéePriseCongé.SelectedIndexChanged
       fctFiltreCongésParAnnées(GRHDataSet1, "reqTblCongésAvecNomPrénom", "strFiltre")
    End Sub
    J'ai un bouton pour annuler mon filtre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub btnAnnulerFiltre_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAnnulerFiltre.Click
       TblPersonnelreqTblCongésAvecNomPrénomBindingSource.Filter = "Nom = '" & cboNom.Text & "'"
       chkFiltreAnnulé.Checked = True
    End Sub
    Donc je peux filtrer autant que je veux; mais dès que j'annule le filtre, il n'est plus possible de filtrer !
    Merci pour votre aide.

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    56
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Janvier 2007
    Messages : 56
    Points : 35
    Points
    35
    Par défaut C'est Fait !
    Finalement, j'ai trouvé où était mon problème :
    Bizarrement, c'est l'utilisation du DataView dans ma fonction de filtrage !?
    Donc au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Function fctFiltreCongésParAnnées(ByVal objDataSet As DataSet, ByVal strNomTable AsString, ByVal strFiltre AsString)
     Dim objDataView AsNew DataView
     strFiltre = "Nom = '" & cboNom.Text & "' And AnnéeCessation = " & cboAnnéePriseCongé.Text & ""
     With objDataView
    ' Charger la table dans le DataView
      .Table = GRHDataSet1.reqTblCongésAvecNomPrénom
      .RowFilter = strFiltre
     End With
     Me.TblPersonnelreqTblCongésAvecNomPrénomBindingSource.DataSource = objDataView
    End Function
    J'ai fait directement ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Public Function fctFiltreCongésParAnnées()
      TblPersonnelreqTblCongésAvecNomPrénomBindingSource.Filter = "Nom = '" & cboNom.Text & "' And AnnéeCessation = '" & cboAnnéePriseCongé.Text & "'"
    End Function
    Et ça marche .

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 27/03/2013, 09h31
  2. Réponses: 2
    Dernier message: 08/09/2010, 10h15
  3. Réponses: 1
    Dernier message: 16/09/2008, 14h35
  4. Réponses: 2
    Dernier message: 07/03/2007, 15h09
  5. Réponses: 1
    Dernier message: 07/04/2006, 09h36

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