Я не могу изменить культуру страницы .aspx.Невозможно изменить культуру .aspx page
Когда я указываю культуру, используя директиву страницы в верхней:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Index.aspx.cs" Inherits="VideoPlayerPrototype.Index" Culture="ur-PK" UICulture="ur-PK" %>
Все работает, как ожидалось.
Что бы я хотел сделать, это возможность изменить локализацию, когда пользователь нажимает на ссылку.
Ссылка: Метод
<asp:ImageButton ID="lang_ur-PK"
ImageUrl="~/content/image/flag-of-pakistan.png"
runat="server"
CssClass="language"
Height="64px"
Width="64px"
OnClick="setLanguage" />
SetLanguage:
protected void setLanguage(Object sender, EventArgs e)
{
Thread.CurrentThread.CurrentCulture = CultureInfo.GetCultureInfo("ur-PK");
Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("ur-PK");
Response.Redirect(Request.Path);
}
Вызов этого кода просто перезагружает страницу и не загружает правильный язык.
У меня есть .resx файлы, хранящиеся в App_LocalResources и App_GlobalResources:
Index.aspx.resx, Index.aspx.en.resx, Index.aspx.ur-PK.resx, Index.aspx.ur.resx и т.д.
Вот пример управления, который должен быть локализован:
<asp:Label id="lblInfoWelcomeMsg" runat="server"
Text="<%$ Resources:LocalizedText, Summary_Info_WelcomeMsg %>"></asp:Label>
Спасибо
Вот страница [msdn] (http://msdn.microsoft.com/en-us/library/bz9tc508.aspx), которая показывает, как это сделать, а также объясняет трудности с использованием данных post –