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

VB.NET Discussion :

Faire une Datagrid personnalisée


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut Faire une Datagrid personnalisée
    Bonjour,

    (pas expérimentée du tout), j'ai fait une p'tite appli qui comporte une datagrid qui me permet d'afficher les données d'une tabe en base et quand on clique sur un ligne, on voit le détail en dessous de tous les champs de cette ligne

    Le pb c'est que je voudrais ne ramener dans la datagrid que certains champs et en plus donner des noms au colonnes autres que le nom des champs dans la base ...

    si vous avez quelques minutes pour m'aider ou m'orienter vers des solutions toute faites ...

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut
    Tout ca est plutôt pas claire pour moi.

    Voici le début de mon code :
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
     'declaration de la connection
        Private Connection As New OleDb.OleDbConnection()
        'declaration du DataSet
        Private DtSetCommandes As New DataSet
        'declaration du dataAdapter
        Private AdapCommandes As New OleDb.OleDbDataAdapter("SELECT * FROM Commandes ", Connection)
        'DateEnlev>=date() or DateEnlev is null
        'Private AdapCommandes As New OleDb.OleDbDataAdapter
     
     
     
    etc etc 
     
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
            Dim Dataview1 As New DataView
     
            Connection.ConnectionString = "provider=microsoft.jet.oledb.4.0;" & _
            "data source= " & Application.StartupPath & "\" & "bdOliway.mdb;"
     
            Connection.Open()
            DtSetCommandes.Clear()
            AdapCommandes.Fill(DtSetCommandes, "Commandes")
     
            DateDebSelect.Value = Today
            DateFinSelect.Value = DateAdd(DateInterval.Day, 15, DateDebSelect.Value)
     
            Dataview1.Table = DtSetCommandes.Tables("Commandes")
            'Grid_cde1.DataSource = Nothing
            Dataview1.Sort = "DateEnlev"
            Dataview1.RowFilter = "(DateEnlev>='" + DateDebSelect.Text + "' and DateEnlev<='" + DateFinSelect.Text + "') or DateEnlev is null"
     
            Grid_cde1.DataSource = Dataview1
     
     
            'on se postitionne sur la  premiere ligne de la grille
            'et on met les champs a jour
            Grid_cde1.Select(0)
            Grid_cde1.CurrentRowIndex = 0
     
            Affiche_champ()
            GereBloqueDetail(True)
            BtnDate.Enabled = False
     
            'on ferme la connection - mode déconnecté
            Connection.Close()
     
        End Sub
    Ca doit pas être compliqué de cacher certaines colonnes que je veux pas voir dans Grid_cde1 mais que j'utilise après et de donner des noms "lisibles" à ces colonnes ... et pourtant aucunes propriétés de Grid_cde1.? ne permet de le faire

  3. #3
    Membre du Club
    Inscrit en
    Juin 2007
    Messages
    8
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 8
    Par défaut remplir une datagrid
    bjr

    c'est une proposition parmis des dizaines;
    personnelement je fais une fonction ke j'appele 'remplir_grid' qui execute une requte de la façon suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
           Dim sql As String = "execute requete"
            Dim ds As DataSet = c.GetDatta(sql)
            MaDataGrid.DataSource = ds
            MaDataGrid.DataBind()
    avec 'requete' est la requte ou je specifie les champs ke je veux importer à 'MaDataGrid', et ke je renomme avec 'as'
    c est ma classe de connexion et 'getdata' est une fonction de la classe connexion et ki me retourne 'un dataset'

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    100
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 100
    Par défaut Pas sans mal
    J'ai trouvé ma solution ... pas sans mal mais bon, pour ceux que ca interresse ...
    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
    Private Sub FormateGrid()
            Dim table As DataTable
            table = DtSetCommandes.Tables("Commandes")
            ' table est une DataTable
            Grid_cde1.DataSource = table
     
            ' on crée une table de style qui permettra de renommer les colonnes.
            Dim tableStyle As DataGridTableStyle = New DataGridTableStyle
     
            ' IMPORTANT: il faut associer le nom de la table au style
            tableStyle.MappingName = table.TableName
     
            ' en ajoutant le style au DataGrid, les DataGridColumnStyle sont automatiquement créés
            ' en fonction de la table spécifiée par tableStyle.MappingName
            Grid_cde1.TableStyles.Add(tableStyle)
     
     
            ' gestion du formattage
            ' Changement des titres de colonnes
            tableStyle.GridColumnStyles("non colonne en bdd").HeaderText = "non voulu"
     
     
            ' Masquer des colonnes en mettant la largeur à 0
            tableStyle.GridColumnStyles("non colonne en bdd").Width = 0
     
     
            ' Définir la valeur à afficher si valeur null
            tableStyle.GridColumnStyles("col1").NullText = "?"
     
            'centrage des champs
            tableStyle.GridColumnStyles("Col1").Alignment = HorizontalAlignment.Center
            End Sub

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 24/08/2011, 14h06
  2. Faire une GridView personnalisée
    Par Orphey dans le forum ASP.NET
    Réponses: 5
    Dernier message: 28/12/2010, 15h11
  3. comment faire une ihm personnalisable
    Par djedjeyop dans le forum Général Python
    Réponses: 7
    Dernier message: 31/01/2010, 19h35
  4. Faire le Cast d'un objet récupéré dans une datagrid
    Par MaitreTsiang dans le forum Flex
    Réponses: 11
    Dernier message: 04/11/2008, 16h13
  5. Faire une requête de contenu sur une liste personnalisée
    Par filigane dans le forum SharePoint
    Réponses: 0
    Dernier message: 13/09/2007, 11h28

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