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

ASP.NET Discussion :

[c#] Comment traduire des Tooltip et des entêtes de datagrid suivant la langue utilis


Sujet :

ASP.NET

  1. #1
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut [c#] Comment traduire des Tooltip et des entêtes de datagrid suivant la langue utilis
    J'utilise des fichiers ressources pour traduire mon application.

    en utilisant LocRM.GetString("name") dans mon code behind qui appelle la traduction dans le fichier ressource .

    Mais je ne sais pas comment faire pour tout ce qui est en "dur" en HTML comme : les tooltip, les Headertext des datagrids...

    QQ1 a -t'il une idée ?

    Merci d'avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    je l'ai fait dans le code behind, je n'ai trouvé que cette solution, tu le fais qu'une fois au chargement de la page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    MyDataGrid.Column[0].HeaderText = Resources.NameFileResources.NameKey;
    Fix

  3. #3
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut Merci pour la reponse sur le datagrid.
    As-tu une idée pour les tooltip que je dois aussi traduire ?
    Cordialement,

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    Tu ne peux pas le faire dans le code Html cela ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    ToolTip="<%Resources:NameFileResources, Key %>"
    fix

  5. #5
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Par défaut
    tu crées des fichiers ressources. tu vas sur ta page aspx ensuite tu vas dans le menu outil et tu fais générer ressources locales. tu devrais avoir un fichier dans un répertoire appelé local_resource. et la tu crées d'autres fichiers à partir de celui générer qui contiendront les différentes langues de tes utilisateurs.

  6. #6
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    Je n'ai pas de pb pour créer mes fichiers ressources. J'en ai un en anglais et un en français.

    MAIS

    J'a

  7. #7
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    Je n'ai pas de pb pour créer mes fichiers ressources

    MAIS
    je ne sais pas comment indiquer le code pour des tooltips.
    Actuelement dans mon datagrid j'ai le contenu de mon tooltip en "dur" dans le code HTML
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <asp:ImageButton id="ImgBtmaj" runat="server" ImageUrl="./images/update.gif"
     CommandName="Update"
    ToolTip="Mise à jour d'un client">
    </asp:ImageButton>
    Comment faire pour indiquer à la place de "Mise à jour d'un client" le nom de ma variable utilisée dans mon fichier ressource que j'appelle dhébitude avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    protected ResourceManager LocRM;
    monlabel=LocRM.GetString("admin_lbltitre");
    Merci d'avance

  8. #8
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    j'ai essayé ce que m'a dis Fix mais cela ne fonctionne pas : cela m'affiche mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    ToolTip='<%"archivageimages.LangueFR", "imgtab_hlkPanier" %>'
    de plus suivant ma variable j'utilise un fichier ressource différent.

    Une idée ?
    Merci

  9. #9
    Membre extrêmement actif
    Profil pro
    Inscrit en
    Août 2005
    Messages
    1 240
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 1 240
    Par défaut
    euh mais je ne vois pas le nom de la ressource dans ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <asp:ImageButton id="ImgBtmaj" runat="server" ImageUrl="./images/update.gif"
     CommandName="Update"
    ToolTip="Mise à jour d'un client">
    </asp:ImageButton>
    ?????
    tu devrais avoir un truc de ce type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <asp:ImageButton id="ImgBtmaj" runat="server" ImageUrl="./images/update.gif"
     CommandName="Update"
    ToolTip="Mise à jour d'un client" meta:resourcekey="imagebuttonResource1">
    </asp:ImageButton>
    et dans ton fichier de ressource tu mets imagebuttonResource1.ToolTip "Mise à jour d'un client"
    c'est comme ca que ca marche.

  10. #10
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    Le nom de la ressource est indiqué sur ma page de login en fonction de la langue choisie.
    Et ensuite je la garde en variable que je transmet de page en page.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    LocRM= new ResourceManager(Utilisateur.langue, typeof(login).Assembly);
    Pour afficher des label je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    labelX.Text= LocRM.GetString("LabelXdufichier");
    dans le fichier ressource j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <data name="LabelXdufichier">
    		<value>TOTO</value>
    </data>
    Je n'arrive pas à faire ce que tu me dis , j'ai une "Erreur d'analyse" sur le code HTML.

    J'ai mis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    meta:resourcekey="LabelXdufichier"
    et dans le fichier ressource je ne comprend pas.

    Je débute et j'ai du mal.
    Merci en tout cas de ton aide

  11. #11
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    oula
    je fais un truc bcp plus simple, je ne sais pas si c'est la meilleur chose à faire.

    Moi j'ai des fichiers resources global (aux) , et dans mon html j'ai ceci (en ce qui te concerne)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    ToolTip="<%$Resources:NameFile, Key %>"

  12. #12
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    Mais comment précises-tu que suivant le choix initial c'est le fichier ressource 1 ou 2 ?
    sinon je dois être nulle car j'ai fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Tooltip="<% archivageimages.LangueFR,makey%>"
    et cela m'affiche telque et non le contenu de makey
    Merci

  13. #13
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    voilà un lien, j'espère que tu comprendras un peu mieux :

    Lien


    Fix

  14. #14
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    Merci ,
    je vais lire le texte mais je ne suis pas en 2.0

  15. #15
    Membre chevronné
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    581
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2004
    Messages : 581
    Par défaut
    oooooooooooh et tu le dis maintenant toi
    Ok alors je ne saurai pas plus t'aider, car je travaille en 2.0 et ca fonctionne.

    Je suis désolé,

    Fix

  16. #16
    Membre averti
    Inscrit en
    Mars 2005
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 30
    Par défaut
    Je vais essayer de migrer rapidement car il parait que la 2.0 va me simplifier la vie.
    en tout cas merci pour ton aide et
    BONNE ANNEE

  17. #17
    Membre habitué
    Inscrit en
    Mars 2006
    Messages
    12
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Mars 2006
    Messages : 12
    Par défaut Resources
    Citation Envoyé par fix105
    je l'ai fait dans le code behind, je n'ai trouvé que cette solution, tu le fais qu'une fois au chargement de la page :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    MyDataGrid.Column[0].HeaderText = Resources.NameFileResources.NameKey;
    Fix
    J'essaie de faire ça suite à la conversion d'un site en 2.0 mais ça me dit:
    Le nom 'Resources' n'existe pas dans le contexte actuel.

    Et c'est pourtant bien ce que MS dit de faire sur son site:
    http://msdn2.microsoft.com/en-us/lib...12.aspx#issue4

    Mes fichiers de ressources sont dans le répertoire 'App_GlobalResources' de la forme ressources.accueil.fr.resx, ressources.accueil.en.resx pour la page accueil.aspx par exemple.

    Que me manque t'il ?

    En .Net 1.0 je faisait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    RM = new System.Resources.ResourceManager(RsrcFile, typeof(Accueil).Assembly);
    this.Lbl_Title.Text = RM.GetString("Lbl_Title");
    Mais après la convertion de mon projet avec Visual Studio 2005 ceci ne marche plus.

Discussions similaires

  1. Réponses: 14
    Dernier message: 21/10/2014, 11h12
  2. Comment ajouter des séries dans des graphes sur des feuilles variables
    Par Molomarcopolo dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/07/2012, 16h26
  3. Réponses: 4
    Dernier message: 02/04/2008, 17h51
  4. Réponses: 3
    Dernier message: 13/09/2007, 18h11
  5. Réponses: 2
    Dernier message: 27/04/2006, 16h45

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