Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / 2 кнопки на форме / 7 сообщений из 7, страница 1 из 1
05.09.2006, 22:51
    #33966637
Махмуд
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
Привет.

Как мне реализовать 2 разных события по 2 кнопкам на одной форме? Пример - "Предпросмотр" и "Отправить" при отправке сообщения на форуме.--
Век живи - век учись, дураком помрешь
...
Рейтинг: 0 / 0
05.09.2006, 22:55
    #33966642
Махмуд
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
А! Еще - как мне отследить, что была нажата именно та или иная кнопка?--
Век живи - век учись, дураком помрешь
...
Рейтинг: 0 / 0
05.09.2006, 23:54
    #33966677
Махмуд
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
Эх блин! Нравится мне самому себе отвечать на этом форуме :) Или я и вправду такие идиотские вопросы задаю?
Ну да ладно, ближе к делу. Нашел я ответ, незамысловатый и довольно-таки простой.
Дело в том, что с каждым постбэком в скрытом поле __EVENTTARGET отсылается контрол, который инициировал постбэк. Но! Это работает только в случае, если постбэк прошел по любому из контролов, кроме кнопки!
В то же время, в Page.Request.Form кнопка сохраняется, но только та, которая и привела к постбэку. Отсюда код:


public static Control GetPostBackControl(Page page)
{
Control control = null;

string ctrlname = page.Request.Params.Get("__EVENTTARGET");
if (ctrlname != null && ctrlname != string.Empty)
{
control = page.FindControl(ctrlname);
}
else
{
foreach (string ctl in page.Request.Form)
{
Control c = page.FindControl(ctl);
if (c is System.Web.UI.WebControls.Button)
{
control = c;
break;
}
}
}
return control;
}

Вызывается этот метод так:

if (IsPostBack)
{
Control c = GetPostBackControl(this.Page);
if (c != null)
{
//...
}
}

И делаем нужный нам case по имени контрола или еще по чему-то там, и в зависимости от этого обрабатываем результаты.--
Век живи - век учись, дураком помрешь
...
Рейтинг: 0 / 0
06.09.2006, 10:36
    #33967182
Georgiy L.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
А че обыкное событие нажатия кнопки не подходит?

У меня все на этом принципе.
...
Рейтинг: 0 / 0
06.09.2006, 12:09
    #33967526
ЧеГевара
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
жесть
...
Рейтинг: 0 / 0
06.09.2006, 16:18
    #33968553
Махмуд
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
Просто у меня эта страница работает чуток по-другому, потому мне и надо было узнать, какая именно кнопка инициировала постбэк--
Век живи - век учись, дураком помрешь
...
Рейтинг: 0 / 0
06.09.2006, 17:20
    #33968840
dima_dima
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
2 кнопки на форме
МахмудПросто у меня эта страница работает чуток по-другому, потому мне и надо было узнать, какая именно кнопка инициировала постбэк--
Век живи - век учись, дураком помрешь

как по-другому-то?
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / 2 кнопки на форме / 7 сообщений из 7, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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