Accueil > > > UTILISATION DES FICHIERS RESSOURCES POUR DU MULTILIGNUE
UTILISATION DES FICHIERS RESSOURCES POUR DU MULTILIGNUE
Information sur la source
Description
Source trés simple permettant de charger un fichier ressource créé avec visual studio (projet complet inclus dans le fichier zip à télécharger), pour afficher la langue désirée dans la page web.
Source
- 'Pour voir tout le code, veuillez télécharger le code source
-
-
- 'Côté code de la web form:
- '----------------------------------------
- Imports System.Resources
- Imports System.Globalization
- Imports System.Threading
-
- Public Class WebForm2
- Inherits System.Web.UI.Page
- Private rm As ResourceManager
-
- #Region " Code généré par le Concepteur Web Form "
-
- 'Cet appel est requis par le Concepteur Web Form.
- <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
-
- End Sub
- Protected WithEvents Label1 As System.Web.UI.WebControls.Label
- Protected WithEvents Button1 As System.Web.UI.WebControls.Button
- Protected WithEvents Button2 As System.Web.UI.WebControls.Button
- Protected WithEvents Button3 As System.Web.UI.WebControls.Button
-
- 'REMARQUE : la déclaration d'espace réservé suivante est requise par le Concepteur Web Form.
- 'Ne pas supprimer ou déplacer.
- Private designerPlaceholderDeclaration As System.Object
-
- Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
- 'CODEGEN : cet appel de méthode est requis par le Concepteur Web Form
- 'Ne le modifiez pas en utilisant l'éditeur de code.
- InitializeComponent()
-
- rm = Application("myRM")
-
- End Sub
-
- #End Region
-
- Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- 'Placez ici le code utilisateur pour initialiser la page
- mDisplay_Language()
-
- End Sub
- Private Sub mDisplay_Language()
-
- 'On appelle les traductions par cette méthode
- Label1.Text = rm.GetString("IdMessage1")
-
-
- End Sub
-
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
-
- 'Pour changer de langue, on change la culture en cours
- 'ATTENTION: si vous mettez juste "fr", vous aurez une erreur, il faut préciser
- 'pour chaque langue la région: "fr-FR"
- Thread.CurrentThread.CurrentCulture = New CultureInfo("fr-FR", True)
- Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
- mDisplay_Language()
- End Sub
-
- Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
- Thread.CurrentThread.CurrentCulture = New CultureInfo("en-US", True)
- Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
- mDisplay_Language()
-
- End Sub
-
- Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
- Thread.CurrentThread.CurrentCulture = New CultureInfo("es-ES", True)
- Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
- mDisplay_Language()
- End Sub
- End Class
-
-
-
- 'Côté code du global.asax:
- '----------------------------------------
-
- Imports System.Web
- Imports System.Web.SessionState
- Imports System.Globalization
- Imports System.Threading
-
-
-
- Public Class Global
- Inherits System.Web.HttpApplication
-
- #Region " Code généré par le Concepteur de composants "
-
- Public Sub New()
- MyBase.New()
-
- 'Cet appel est requis par le Concepteur de composants.
- InitializeComponent()
-
- 'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
-
- End Sub
-
- 'Requis par le Concepteur de composants
- Private components As System.ComponentModel.IContainer
-
- 'REMARQUE : la procédure suivante est requise par le Concepteur de composants
- 'Elle peut être modifiée à l'aide du Concepteur de composants.
- 'Ne la modifiez pas en utilisant l'éditeur de code.
- <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
- components = New System.ComponentModel.Container
- End Sub
-
- #End Region
-
- Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
- ' Se déclenche lorsque l'application est démarrée
-
-
- '**ATTENTION: Si on met pas le nom du projet devant le nom de la ressource : marche pas !!(eh oui c précisé nulle part).
- Application("MyRM") = New System.Resources.ResourceManager("Ressource.test", System.Reflection.Assembly.GetExecutingAssembly())
-
- 'Note: pour charger le fichier ressource qui est généré automatiquement par visual studio, il
- 'existe plusieurs techniques, malheureusement celle que je présente ici est la seule que j'ai réussi
- 'à faire fonctionner.
-
- End Sub
-
- Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
- ' Se déclenche lorsque la session est démarrée
-
- 'Détection de la langue
- Try
- 'On regarde si il y a des langues indiqué dans le navigateur
- If Not Request.UserLanguages() Is Nothing Then
- 'Récupére la premiére langue du navigateur
- Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(Request.UserLanguages(0))
- Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
- End If
- Catch ex As Exception
- 'Si pas trouvé de langue par défaut on peut en attribuer une par défaut ou laisser
- 'le .NET rechercher par lui même le language racine
-
- Thread.CurrentThread.CurrentCulture = New CultureInfo("fr-FR")
- Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
- End Try
-
- End Sub
'Pour voir tout le code, veuillez télécharger le code source
'Côté code de la web form:
'----------------------------------------
Imports System.Resources
Imports System.Globalization
Imports System.Threading
Public Class WebForm2
Inherits System.Web.UI.Page
Private rm As ResourceManager
#Region " Code généré par le Concepteur Web Form "
'Cet appel est requis par le Concepteur Web Form.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents Label1 As System.Web.UI.WebControls.Label
Protected WithEvents Button1 As System.Web.UI.WebControls.Button
Protected WithEvents Button2 As System.Web.UI.WebControls.Button
Protected WithEvents Button3 As System.Web.UI.WebControls.Button
'REMARQUE : la déclaration d'espace réservé suivante est requise par le Concepteur Web Form.
'Ne pas supprimer ou déplacer.
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN : cet appel de méthode est requis par le Concepteur Web Form
'Ne le modifiez pas en utilisant l'éditeur de code.
InitializeComponent()
rm = Application("myRM")
End Sub
#End Region
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'Placez ici le code utilisateur pour initialiser la page
mDisplay_Language()
End Sub
Private Sub mDisplay_Language()
'On appelle les traductions par cette méthode
Label1.Text = rm.GetString("IdMessage1")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'Pour changer de langue, on change la culture en cours
'ATTENTION: si vous mettez juste "fr", vous aurez une erreur, il faut préciser
'pour chaque langue la région: "fr-FR"
Thread.CurrentThread.CurrentCulture = New CultureInfo("fr-FR", True)
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
mDisplay_Language()
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Thread.CurrentThread.CurrentCulture = New CultureInfo("en-US", True)
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
mDisplay_Language()
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Thread.CurrentThread.CurrentCulture = New CultureInfo("es-ES", True)
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
mDisplay_Language()
End Sub
End Class
'Côté code du global.asax:
'----------------------------------------
Imports System.Web
Imports System.Web.SessionState
Imports System.Globalization
Imports System.Threading
Public Class Global
Inherits System.Web.HttpApplication
#Region " Code généré par le Concepteur de composants "
Public Sub New()
MyBase.New()
'Cet appel est requis par le Concepteur de composants.
InitializeComponent()
'Ajoutez une initialisation quelconque après l'appel InitializeComponent()
End Sub
'Requis par le Concepteur de composants
Private components As System.ComponentModel.IContainer
'REMARQUE : la procédure suivante est requise par le Concepteur de composants
'Elle peut être modifiée à l'aide du Concepteur de composants.
'Ne la modifiez pas en utilisant l'éditeur de code.
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
components = New System.ComponentModel.Container
End Sub
#End Region
Sub Application_Start(ByVal sender As Object, ByVal e As EventArgs)
' Se déclenche lorsque l'application est démarrée
'**ATTENTION: Si on met pas le nom du projet devant le nom de la ressource : marche pas !!(eh oui c précisé nulle part).
Application("MyRM") = New System.Resources.ResourceManager("Ressource.test", System.Reflection.Assembly.GetExecutingAssembly())
'Note: pour charger le fichier ressource qui est généré automatiquement par visual studio, il
'existe plusieurs techniques, malheureusement celle que je présente ici est la seule que j'ai réussi
'à faire fonctionner.
End Sub
Sub Session_Start(ByVal sender As Object, ByVal e As EventArgs)
' Se déclenche lorsque la session est démarrée
'Détection de la langue
Try
'On regarde si il y a des langues indiqué dans le navigateur
If Not Request.UserLanguages() Is Nothing Then
'Récupére la premiére langue du navigateur
Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(Request.UserLanguages(0))
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
End If
Catch ex As Exception
'Si pas trouvé de langue par défaut on peut en attribuer une par défaut ou laisser
'le .NET rechercher par lui même le language racine
Thread.CurrentThread.CurrentCulture = New CultureInfo("fr-FR")
Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture
End Try
End Sub
Conclusion
Il existe plusieurs méthode pour charger le fichier ressource(du global.Asax), dont une trés intéressante ( Application("MyRM") = New System.Resources.ResourceManager(GetType(myWebForm )) qui permet de de charger le fichier ressource par webform, mais impossible de la faire fonctionner chez moi: conflit dans le nom des fichiers .resX(même en supprimante le webform1.resx)... Bref voici une méthode qui fonctionne.
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
ressource de moteur de recherche [ par sofa ]
Bonjour,nous sommes deux etudiantes en informatique et nous sommes entrain de faire une recherche sur les codes sources (de preference en asp)de moteu
Comment lire les rendez-vous Exchange en ASP ???? [ par YDY ]
Bonjour,J'aimerais en ASP lire le calendrier d'une salle de réunion créée sur Exchange Server 5.0.Exemple:Une ressource nommée "Salle 305" possède un
erreur "La ressource demandée est en cours d'utilisation" sur IIS5 [ par frahil ]
sur toutes mes pages asp (y compris http://localhost/iisHelp/ ) j'ai l'erreur "La ressource demandée est en cours d'utilisation". J'ai eu ce problème
Erreur sur IIS... "La ressource demandée est en cours d'utilisation" [ par gusalex ]
Bonjour a tous,voilà, j'ai un petit soucis avec un code en ASP qui tourne sur IIS sous Windows XP.En fait, ce n'est pas le code qui est foireux car ce
multilingue [ par jcq ]
Bonjour,je suis depuis quelques heures déjà, sur le probléme du multi langue dans un site. Et donc aprés plusieurs hésitation je pars sur du fichier r
Site multilingue ASP.NET [ par berocca ]
Bonjour,Je souhaite créer un site multilingue en ASP.NET. Quelle est l'approche à suivre ? Tous les conseils sont les bienvenus !D'autre par
créer site multilingue [ par abari ]
bonjour,y-a t-elles des solutions en asp pour créer un site web multilingue merci de donner les plus utilisées avec des liens ou d
Resource files [ par akaii ]
Hello,voilà j'ai créé mes fichiers .resx en fonction des différentes langues en les nommants comme suit:<monFichier>.<UI&
Resources [ par akaii ]
Hello,voilà j'ai créé mes fichiers .resx en fonction des différentes langues en les nommants comme suit:<monFichier>.<UI>.resx<Global&g
recuperation des valeurs d'une requete dans des Labels [ par mael974 ]
bonjour je souhaiterez lors d'une requete SELECT recuperer certaine valeur ds un label, je procede de la facon suivante, ms je recupere que la m
|
Derniers Blogs
TECHDAYS PARIS 2010 : SHAREPOINT 2010 POUR LES DéVELOPPEURSTECHDAYS PARIS 2010 : SHAREPOINT 2010 POUR LES DéVELOPPEURS par ROMELARD Fabrice
Animé par: Laurent Cotton Le développement dans SharePoint 2010 passe par plusieurs axes qui seront évoqués dans cette session, mais plus particulièrement les développements simples lié au besoin Business Business Connectivity Services Ce BCS es...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice TECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOURTECHDAYS PARIS 2010 : PLEINIèRE DERNIER JOUR par ROMELARD Fabrice
Cette session est la dernière pleinière de ces 3 jours de TechDays Paris 2010. Généralement, cette troisième journée est plus axée sur l'avenir vu par Microsoft. Après un retour sur l'avenir vu par la Science Fiction ou par ...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice UNE JOLIE-HORLOGE ET PAS QU'UN PEU !UNE JOLIE-HORLOGE ET PAS QU'UN PEU ! par neodante
Pour les possesseurs d'iPhone, ça y est Bijin Tokei - qui se traduit littéralement en Français par " Jolie Horloge " - est arrivé et GRATUITEMENT s'il vous plaît ! Après la version Tokyo, Hokkaido, night club, racing, Gal, "pour les mademoiselles'", . voi...
Cliquez pour lire la suite de l'article par neodante TECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICESTECHDAYS PARIS 2010 : CONNECTEZ VOS DONNéES à SHAREPOINT 2010 AVEC LES BUSINESS CONNECTIVITY SERVICES par ROMELARD Fabrice
Animé par: Gaetan Bouveret et Julien Chomarat Business Connectivity Services (BCS) est dans SharePoint 2010 la version 2 de Business Data Catalog (BDC dans SharePoint 2007). Il s'agit de la solution permettant de visualiser des données provenan...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice [DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE[DIVERS] SUIVRE VOS SéRIES PRéFéRéS SUR LA TOILE par orion
Comme de nombreux geek, je suis un grand amateur de série TV et je rate régulièrement des épisodes de mes séries préférés. Une solution s'offre à vous avec ce merveilleux site : Tv Gorge - www.tvgorge.com Moteur de recherche à l'appui, vous pouvez ...
Cliquez pour lire la suite de l'article par orion
Forum
VB.NETVB.NET par hajourawm
Cliquez pour lire la suite par hajourawm URL REWRITINGURL REWRITING par hudon77
Cliquez pour lire la suite par hudon77
Logiciels
DB-MAIN (9.1.0)DB-MAIN (9.1.0)DB-MAIN is a data-modeling and data-architecture tool. It is designed to help developers and anal... Cliquez pour télécharger DB-MAIN Xilisoft DPG Convertisseur (5.1.37.0120)XILISOFT DPG CONVERTISSEUR (5.1.37.0120)Xilisoft DPG Convertisseur offre aux fans de Nintendo DS une bonne solution leur permettant de dé... Cliquez pour télécharger Xilisoft DPG Convertisseur GraphicsGale (2.01.01)GRAPHICSGALE (2.01.01)GraphicsGale est un logiciel de PixelArt avec de nombreuse fonctionnalités permettant de réalisé ... Cliquez pour télécharger GraphicsGale Architecte 3D (Platinum 2010)ARCHITECTE 3D (PLATINUM 2010)Architecte 3D Platinium vous permet de concevoir facilement les plans votre future maison, de l'é... Cliquez pour télécharger Architecte 3D TeamViewer 5 (TeamViewer 5)TEAMVIEWER 5 (TEAMVIEWER 5)Dépanner un ami,expliquer une manipulation devient un jeu d'enfant.
Prise en main d'un autre ord... Cliquez pour télécharger TeamViewer 5
|