Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.141.8.247] |
|
Сообщ.
#1
,
|
|
|
Событие для кнопки Button1 должно при каждом нажатии на кнопку удлинять ее на 10 пикселей. Однако на деле это происходит только один раз. Второе, третье и так далее нажатия размеры кнопки не изменяют. Такое ощущение, что .Width.Value содержит размер кнопки, заданный при разработке.
Где я не прав? И еще я подозреваю, что я сильно не прав в последней строчке с т.з. небыдлокода. Как написать иначе? С Web-программированием столкнулся впервые, надо быстро наверстать основы. protected void Button1_Click(object sender, EventArgs e) { double b1w; b1w = Button1.Width.Value + 10d; Button1.Width = (Unit)b1w; } |
Сообщ.
#2
,
|
|
|
Ладно, может, кому-то более знакома следующая ситуация. На странице есть два текстовых поля и кнопка. При загрузке страницы выполняется следующий код:
protected void Page_Load(object sender, EventArgs e) { TextBox1.Text = "Введите адрес электронной почты"; TextBox2.Text = "Введите пароль"; Button1.Text = "Войти"; } Пользователь на странице вводит свой e-mail и пароль и тыкает по кнопке. Однако при обработке события нажатия кнопки в свойстве TextBox1.Text все так же лежит "Введите адрес электронной почты", а не то, что ввел пользователь. Если же в Page_Load ничего не заполнять, то в Text1Box1.Text будет содержаться именно то, что ввел пользователь. Что я делаю не так? Устал уже. Чувствую, что надо что-то сделать с PostBack, но не могу понять, что именно. Добавлено Ларчик просто открывался. В Page_Load перед установкой значений текстбоксов нужно было вставить проверку на postback (т.е. на первичное отображение страницы): protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) return; TextBox1.Text = "Введите адрес электронной почты"; TextBox2.Text = "Введите пароль"; Button1.Text = "Войти"; } Удивительно, что в интернете описание такой ситуации с инициализацией страницы не находится влоб, воспользовался книжкой. |
Сообщ.
#3
,
|
|
|
По второму вопросу: данную инициализацию надо проводить в Page_Init.
Добавлено По первому: если задана ширина кнопки в дизайнере, то Button1.Width += new Unit (10, Unit.Pixel); по идее должно работать. |
Сообщ.
#4
,
|
|
|
Цитата Uncle_Bob @ По первому: если задана ширина кнопки в дизайнере, то Button1.Width += new Unit (10, Unit.Pixel); по идее должно работать. Не, проблема была в том же Postback, что и во втором случае. За более правильный синтаксис спасибо. |
Сообщ.
#5
,
|
|
|
В Init должно работать и без Postback
|
Сообщ.
#6
,
|
|
|
В Init - да.
|