Avatar billede zapzone Nybegynder
20. oktober 2007 - 22:56 Der er 3 kommentarer og
1 løsning

Skifte sprog

Godaften ekspertet :)

Jeg har et problem med at skifte sprog (dansk/engelsk) på min side.

Here goes:

Jeg har en aspx side, som indeholder nogle controls, udfyldt disse controls' Text property med en logisk tekst på dansk. Herefter har jeg genereret en resx fil (Tools -> Generate local resources) - Filen hedder "Default.aspx.resx" - Denne har jeg taget en kopi af, omdøbt den til "Default.aspx.en.resx" - Har åbnet denne fil og udfyldt denne med de engelske betegnelser.

Hvis jeg ændrer UICulture property'en på Default.aspx til "en English" og loader siden, så fremstår alle mine controls på engelsk, og vælger jeg "da Danish" så kommer de på dansk. Det er vældigt. Men hvordan laver jeg sådan at man kan skifte mellem sprogene når siden er loaded ? F.eks. ved at trykke på en knap ?
Avatar billede dr_chaos Nybegynder
20. oktober 2007 - 23:01 #1
Du kan gøre det på denne måde:
using System.Threading;
public partial class TestPage : System.Web.UI.Page
{
    protected override void InitializeCulture()
    {
        string _userLanguage = string.Empty;
        if (Session["userLanguage"] != null)
            _userLanguage = Session["userLanguage"].ToString();
        if (_userLanguage != "")
        {
            Thread.CurrentThread.CurrentUICulture = new CultureInfo(_userLanguage);
            Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(_userLanguage);
        }
    }
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    protected void LinkButton1_Click(object sender, EventArgs e)
    {
        // store the user preferred language in a session
        Session["userLanguage"] = "da-DK";
    }
}
Avatar billede dr_chaos Nybegynder
20. oktober 2007 - 23:02 #2
Avatar billede zapzone Nybegynder
20. oktober 2007 - 23:14 #3
Cool... :) Mystisk... Synes jeg havde prøvet denne metode, men kunne ikke få den til at skifte, der skete simpelthen ingenting når jeg klikkede på min imagebutton, men efter at have kopieret ovenstående ind i min kode, ja så virker det sgu :) Har dog suppleret med en Response.Redirect("Default.aspx"); - Da man ellers skal opdatere siden manuelt før sproget skifter.

Mange tak. Hvis du lige planter et svar, så skal du få dine point :)
Avatar billede dr_chaos Nybegynder
20. oktober 2007 - 23:30 #4
svar :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester