powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Запутался в Page_Load, Button_Click
5 сообщений из 5, страница 1 из 1
Запутался в Page_Load, Button_Click
    #33822616
Sergej_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Братцы, помогите с локализацией!

Есть форма с кнопками переключения языка (англ.и рус.) и лейбл. Для лейбла для каждого языка созданы ресурсные файлы.
При клике на кнопку сохраняю значение языка в переменную сессии:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
    protected void RusButton_Click(object sender, EventArgs e)
    {
        Session["Lang"] = "ru";
    }
    protected void EngButton_Click(object sender, EventArgs e)
    {
        Session["Lang"] = "en";
    }

На форме имею метод:
Код: plaintext
1.
2.
3.
4.
5.
    protected override void InitializeCulture()
    {
        string Lang = (string)(Session["Lang"]);
        Page.UICulture = Lang;
    }


Все работает, но текст в лейбле меняется только при повторном нажатии кнопок. Искал по форуму, понял, что Page_Load срабатывает до Button_Click, как тут правильно разрулить не врубаюсь, объясните начинающему!
И еще: как избавиться от сообщения при рефреше страницы: "The page cannot be refreshed without resending the information". И надо ли от него избавляться?
...
Рейтинг: 0 / 0
Запутался в Page_Load, Button_Click
    #33822638
Victor.dev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
измени код:
protected void RusButton_Click(object sender, EventArgs e)
{
Session["Lang"] = "ru";
Response.Redirect("текущая_страница.aspx");
}
protected void EngButton_Click(object sender, EventArgs e)
{
Session["Lang"] = "en";
Response.Redirect("текущая_страница.aspx");
}--------------------------
..keep your code tidy..
--------------------------
...
Рейтинг: 0 / 0
Запутался в Page_Load, Button_Click
    #33823338
Sergej_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To : Victor.dev
Спасибо, на одной странице должно работать. Но дело в том, что у меня кнопки будут лежать на MasterPage. Если делать Redirect, надо как-то вычислять текущую страницу и загружать именно ее.

Может еще варианты подскажете?
...
Рейтинг: 0 / 0
Запутался в Page_Load, Button_Click
    #33823527
Фотография vladgrig
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тынц - вот так это делают гадкие буржуи ;)
посмотри, я сам особо не вникал, но в тех же примерах по смене культуры нашёл вот такой кусочек кода - последняя строка процедуры - на мой взгляд, для тебя, очень актуальна ;)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Protected Sub DropDownLanguage_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
        Dim SelectedLanguage As String = DropDownLanguage.SelectedValue.ToString()
        'Save selected user language in profile 
        Profile.SetPropertyValue("PreferredCulture", SelectedLanguage)
    
        'Force re-initialization of the page to fire InitializeCulture()
        Response.Redirect(Request.Url.LocalPath)

End Sub 'DropDownLanguage_SelectedIndexChanged
...
Рейтинг: 0 / 0
Запутался в Page_Load, Button_Click
    #33823600
Sergej_S
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну спасибо, vladgrig, вот уж помог, все заработало! А то сложно мне, прирожденному фокспрошнику, .net осваивать.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Запутался в Page_Load, Button_Click
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]