Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Заколдованная кнопка / 2 сообщений из 2, страница 1 из 1
26.07.2005, 22:05
    #33185852
Landwarrior
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заколдованная кнопка
Попробуйте понажимать кнопку на форме при поставленном брейкпоинте в ее обработчике. Он вызывается аккуратно через раз. В чем причина и где я накосячил?
...
Рейтинг: 0 / 0
27.07.2005, 21:16
    #33187956
greenapple
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заколдованная кнопка
Хоть ты всегда видишь только одну кнопку, это "разные" кнопки, т.к. создаются вызовами из разных мест. Кнопка "btnUp_OnClick" добавляется уже после ProcessPostData, регистрировать обработчик для нее бесполезно.
Поставь останов на PlaceHolder1.Controls.Clear(), увидишь что он два раза вызывается при загрузке... Жизненный цикл страницы надо смотреть.

Я поправил код, чтобы было лучше видно какая по счету и где создается кнопка:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
public class FormCtrl : System.Web.UI.UserControl
{
   	protected System.Web.UI.WebControls.PlaceHolder PlaceHolder1;

	static int count;

	protected override void OnLoad(System.EventArgs e)
	{
		FillTabsListAndSelect("OnLoad");
		base.OnLoad(e);
	}

	private void FillTabsListAndSelect(string sTabIDToBeSelected)
	{
		PlaceHolder1.Controls.Clear();
		Button btn = new Button();
		btn.Click += new EventHandler(this.btnUp_OnClick);
		btn.Text = sTabIDToBeSelected + (count++).ToString();;
		PlaceHolder1.Controls.Add(btn);
	}

	protected void btnUp_OnClick(object sender, System.EventArgs e)
	{
		FillTabsListAndSelect("btnUp_OnClick");
	}
}
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Заколдованная кнопка / 2 сообщений из 2, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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