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 :

Localization de Datagridview Header


Sujet :

Windows Forms

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    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
    Par défaut Localization de Datagridview Header
    Bonjour

    Je suis confronté a un autre problème de localization
    Les Header Text de datagridview bindés !
    Par defaut ces Header prennent le nom de la colonne donc de la variable sous-jacentes

    Existe-il un moyen privilégié pour changer ce nom en fonction de la langue utilisée ?

    La première solution qui me vient a l'esprit est de definir dans la form un Textbox Multiline caché dont le text serait donc localisé et de traduire les colonnes header en fonction de ce textre

    Ca me semble bricolo mais je n'ai rien trouvé de mieux a ce jour !

  2. #2
    Expert confirmé 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
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Switch (Langue)
    {
      case 0 : MyDataGridView1.Columns("VILLE").HeaderText = "Ville"   ; break ;
      case 1 : MyDataGridView1.Columns("VILLE").HeaderText = "City"   ; break ;
      case 2 : MyDataGridView1.Columns("VILLE").HeaderText = "Stadt" ; break ;
    }

  3. #3
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par olibara Voir le message
    Par defaut ces Header prennent le nom de la colonne donc de la variable sous-jacentes
    Seulement si tu laisses le DataGridView en mode AutoGenerateColumns = true...

    Il vaut mieux définir les colonnes toi-même, avec le designer, et comme ça tu peux les localiser comme tout le reste

  4. #4
    Membre expérimenté
    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
    Par défaut
    Bizarre !

    Je n'avais recu aucune notifications de vos réponses

    Grafito :

    Je te remercie mais tu ne reponds pas vraiment a la question qui n'est pas de savoir comment changer le HeaderText mais bien comment gerer ces noms dans les différentes langues de l'interface

    Tomlev

    Il vaut mieux définir les colonnes toi-même, avec le designer, et comme ça tu peux les localiser comme tout le reste
    C'est une piste qui m'intéresse, mais définir les colonnes d'un DGV bindé dans le designer m'a toujours paru un peu incongru voire sources de problèmes DONC je ne l'ai jamais fait et C'est un domaine que je ne maitrise pas vraiment

    Que ce passe-t-il si le nombre ou le type de colonnes définies dans le designer ne correspond pas a la datasource ? Je peux tres bien avoir une datasource de 10 colonnes et n'en afficher que trois dans le DGV. Habituellement j'utilise la propriété visible

    J'aime bien maitriser dans le code tout ce qui se passe avec le DGV bindé et c'est généralement asser simple.

    La definition du datasource et tout ce qui en découle via le designer me semble fastidieux tout en obfuscant une partie de la mécanique


    Mais j'ai peut etre tout faux et je passe peut etre a coté de la meilleure solution

  5. #5
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par olibara Voir le message
    Que ce passe-t-il si le nombre ou le type de colonnes définies dans le designer ne correspond pas a la datasource ? Je peux tres bien avoir une datasource de 10 colonnes et n'en afficher que trois dans le DGV.
    Ca ne pose pas de problème, tu n'es pas obligé d'utiliser toutes les propriétés de la source...

    Citation Envoyé par olibara Voir le message
    J'aime bien maitriser dans le code tout ce qui se passe avec le DGV bindé et c'est généralement asser simple.
    Ben justement je dirais que tu maitrises plus ce qui se passe en créant les colonnes toi-même...

    Citation Envoyé par olibara Voir le message
    La definition du datasource et tout ce qui en découle via le designer me semble fastidieux tout en obfuscant une partie de la mécanique
    Ah ? J'aurais dit le contraire... J'aime pas le AutoGenerateColumns, parce que ça donne moins de contrôle sur ce qui se passe vraiment

  6. #6
    Membre expérimenté
    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
    Par défaut
    Merci TomLev

    Tu m'incite quand meme a faire un test, je te ferai part de mes impressions
    Tu as peut etre raison.

    Dans ce cas de figure, est-on obligé de passer par un bindingsource ? ou non ?

  7. #7
    Expert confirmé 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
    Par défaut
    Bonjour,

    Dans la mesure où le HeaderText peut être distinct du nom de la colonnne de la DataTable source, je n'ai pas réellement compris où était le problème .

  8. #8
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

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

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par olibara Voir le message
    Dans ce cas de figure, est-on obligé de passer par un bindingsource ? ou non ?
    non, tu peux binder directement sur une DataTable (ou une liste, ou ce que tu veux...)

Discussions similaires

  1. Datagridview header cell diagonal
    Par hotsizzle dans le forum Windows Forms
    Réponses: 3
    Dernier message: 26/11/2008, 14h44
  2. vb.net - Split/merge des headers datagridview
    Par House MD dans le forum VB.NET
    Réponses: 5
    Dernier message: 19/11/2008, 17h42
  3. [VB2005]datagridview : header rowindex ?
    Par Kropernic dans le forum Windows Forms
    Réponses: 8
    Dernier message: 09/06/2008, 09h31
  4. vb.net - Datagridview multi header
    Par House MD dans le forum VB.NET
    Réponses: 6
    Dernier message: 22/04/2008, 19h48
  5. [2.0] Mettre une Checkbox dans le header d'une colonne d'une DatagridView
    Par aurelien.tournier dans le forum Windows Forms
    Réponses: 5
    Dernier message: 23/01/2007, 10h27

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