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 :

Agrandir la dernière colonne d'un DataGridView (DGV)


Sujet :

Windows Forms

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 125
    Points : 109
    Points
    109
    Par défaut Agrandir la dernière colonne d'un DataGridView (DGV)
    Bonjour,

    Je viens de voir que je ne peux pas agrandir la dernière colonne d'un DataGridView (DGV) dont la largeur totale des colonnes est plus grande que la largeur du DGV (ya un scrollBar en bas): le curseur est limité par le bord droit du DGV et ne peux pas le dépasser.
    Si je réduit la taille de cette dernière colonne, plus moyen de la réagrandir plus tard !

    Je doute être le seul à avoir ce problème, mais j'ai du mal faire mes recherches sur le net car je n'ai pas trouvé de cas similaire...

    Quelqu'un a-t-il déjà eu le problème ? A-t-il trouvé une solution ?

    Merci d'avance pour toute aide,
    ElTchoupi

  2. #2
    Membre régulier Avatar de beren.kei
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 123
    Points
    123
    Par défaut
    en exécution ou en mode design ?
    dans le premier cas j'ai encore jamais essayé... dans le 2e tu fais "Modifier les colonnes" et tu change le paramètre "Width" de la colonne en question

    "- Mais à quoi ça sert IE ?
    - à télécharger Firefox ! "

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 125
    Points : 109
    Points
    109
    Par défaut
    Pardon, j'ai pas précisé, c'est à l'execution que j'ai le Pb..

    Je précise que pour l'instant, pour que la colonne ne risque pas de disparaitre, je lui assigne une MinimumWidth égale à la Width d'ouverture (elle devient donc non-resizable...
    ElTchoupi

  4. #4
    Membre émérite
    Profil pro
    Mangeur de gauffre
    Inscrit en
    Octobre 2007
    Messages
    4 413
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Mangeur de gauffre

    Informations forums :
    Inscription : Octobre 2007
    Messages : 4 413
    Points : 2 498
    Points
    2 498
    Par défaut
    Je n'ai jamais vu ce probleme et je viens de tester sans pouvoir reproduire

    Ou alors je n'ai pas compris ce que tu explique

    je lui assigne une MinimumWidth égale à la Width d'ouverture (elle devient donc non-resizable...
    Regarde bien a deux fois ce que tu fais la !
    Je parierais que c'est la que tu te prends les pieds dans le paillasson
    « Ils ne savaient pas que c'était impossible, alors ils l'ont fait ». (Twain)

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 125
    Points : 109
    Points
    109
    Par défaut
    J'avoue que tu m'as mis le doute !

    Mais bon, j'ai vérifié: j'ai bien fait cette modification (le MinimumWidth == Width) APRES avoir constaté ce problème (et en la désactivant, le probleme persiste)...

    Je précise que je crée mes colonnes à la main avant de Binder mon DGV et que je ne n'indique pas de Size à mes colonnes lors de la construction.
    Mon DGV est en mode "Fill" pour le docking à son panel.

    Si quelqu'un à une idée de "où je peux chercher", je prends aussi !!

    En fait, n'importe quoi qui me permette d'avancer, je prends !

    Merci d'avance,
    ElTchoupi

  6. #6
    Membre régulier Avatar de beren.kei
    Inscrit en
    Mai 2008
    Messages
    135
    Détails du profil
    Informations personnelles :
    Âge : 35

    Informations forums :
    Inscription : Mai 2008
    Messages : 135
    Points : 123
    Points
    123
    Par défaut
    j'ai pensé par hasard à une solution, pas très propre mais qui fonctionne...
    tu ajoute en fin de ton datagrid une colonne dont tu mets la taille à 1 ou 2 pixels
    en attendant de trouver mieux ^^

    "- Mais à quoi ça sert IE ?
    - à télécharger Firefox ! "

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Février 2007
    Messages
    125
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2007
    Messages : 125
    Points : 109
    Points
    109
    Par défaut
    Bonne idée !
    Mais j'y avais déjà pensé, en esperant que ça me permettrai d'agrandir la colonne d'avant..
    Malheureusement, on ne peut agrandir la colonne d'avant que de 2 pixels par 2 pixels...

    Je comprends pas, personne n'a ce problème ?
    Ya quelque chose que j'ai zappé dans la conf d'un DGV ??
    ElTchoupi

  8. #8
    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
    Je doute être le seul à avoir ce problème, mais j'ai du mal faire mes recherches sur le net car je n'ai pas trouvé de cas similaire...
    Tape sur google "resize last column datagridview".
    Mais j'ai pas vu de soluce satisfaisante.

    Je pense qu'on peut gérer l'event ColumnWidthChanged du DGV et si on est sur la dernière colonne:
    • on calcule la taille totale T de toutes les colonnes visibles sauf la dernière + largeur rowheader + largeur verticalScrollbar (18 pixels me semble-t'il).
    • on fait T+=N+largeur_de_la_dernière_colonne % N (N étant le pas d'incrémentation, par exemple N=30 pixels)
    • Si la largeur de la ClientSize du DGV est différente de T, on la modifie en portant sa largeur à T.

    en espérant que le fait de changer la clientsize ne décale pas la grille latéralement ...

    Sinon, j'ai vu qu'un double-click sur le header de colonne ajustait la largeur de la colonne au contenu.
    " Le croquemitaine ! Aaaaaah ! Où ça ? " ©Homer Simpson

Discussions similaires

  1. Supprimer un évènement sur la dernière colonne (datagridview)
    Par jacko842 dans le forum Développement Windows
    Réponses: 1
    Dernier message: 09/02/2012, 16h24
  2. agrandir les colonnes d'un datagridview
    Par jihad dans le forum VB.NET
    Réponses: 6
    Dernier message: 18/10/2011, 16h51
  3. agrandir la seule colonne d'une jTable
    Par jdewalqu dans le forum Composants
    Réponses: 8
    Dernier message: 18/09/2006, 15h03
  4. [C#][VS 2005]Supprimer la première colonne dans un DatagridView
    Par cmoiscrat dans le forum Windows Forms
    Réponses: 2
    Dernier message: 29/06/2006, 15h20
  5. [VB.NET] Calculs dans une colonne d'un datagridview
    Par boulete dans le forum Windows Forms
    Réponses: 3
    Dernier message: 31/03/2006, 15h11

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