Ну, как вариант...
Цитата(Vit @ 30.3.2007, 15:48 ) | | 1. Надо создать веб страницу с одной кнопкой. |
В обработчике кнопки, в ViewState добавляем какое-нибудь поле-флажок о том, что нам нужна картинка.
Цитата(Vit @ 30.3.2007, 15:48 ) | | 2. По нажатию кнопки должна создаться маленькая картинка, причём так чтобы на клике на неё загружалась другая страница |
В OnLoad проверяем наличие флага из ViewState и добавляем ImageButton с событием так, как ты написал в начале. При нажатие кнопку в следующий раз поле во ViewState у нас останется, ImageButton появится снова и событие успешно отработает.
Короче, вот в виде кода:
| Код | private Button clickButton;
private void CreateButton() { if (clickButton == null) { clickButton = new Button(); clickButton.Click += new EventHandler(btn_Click); clickButton.Text = "Click Me!"; Form.Controls.Add(clickButton); } }
protected override void OnLoad(EventArgs e) { base.OnLoad(e);
// создадим кнопку при новой загрузке страницы if (ViewState["ShowImage"] != null) { CreateButton(); } }
void btn_Click(object sender, EventArgs e) { // вот оно :) }
protected void Button1_Click(object sender, EventArgs e) { // поставим флаг ViewState["ShowImage"] = true; // вот этот вызов нужен потому, что Button1_Click срабатывает после OnLoad // т.е. иначе после нажатия кнопка не появится CreateButton(); }
|
Вроде так  |