Как спрятать кнопку в.net 2010?
У меня есть простая сеть, для которой есть выпадающий список и кнопка на форме. Раскрывающийся список привязан к таблице в моей базе данных и содержит три значения с идентификаторами от 1 до 3 (еженедельно, ежемесячно, пожалуйста, выберите).
Я установил в своем источнике данных элемент 3 (Пожалуйста, выберите) в качестве первого элемента в раскрывающемся списке, чтобы предложить пользователю выбрать опцию. Элементам 1 и 2 назначены данные, и это отнимает соответствующие данные для этих параметров.
Здесь моя проблема. Мне нужно скрыть мою кнопку, когда страница загружается, пока пользователь не выберет пункт 1 или 2 и не захочет, чтобы кнопка была скрыта, если выбран вариант 3. Я попытался завершить это в моем событии загрузки страницы и коде для выпадающего списка, но я не могу заставить это работать.
If IsNumeric(DropDownList1.SelectedValue) = 3 Then
btnAddAgendaTemplate.Visible = False
End If
3 ответа
В событии загрузки страницы напишите следующий код
If Not Page.IsPostBack() Then
//Set default value in drop down list as 3
End
а также
Записать индекс выбора измененного события выпадающего списка и написать следующий код внутри него.
If DropDownList1.SelectedValue = "3" Then
btnAddAgendaTemplate.Visible = False
ELSE
btnAddAgendaTemplate.Visible = True
END
Изменить: (на основе комментария)
В Selected Index изменилось событие для выпадающего списка для выбранного значения, равного 3, и обработайте соответственно
Предположим, что ваше событие selectedIndexChanged в вашем коде выглядит следующим образом:
Protected Sub DropDownList1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DropDownList1.SelectedIndexChanged
If DropDownList1.SelectedValue.Equals("3") Then
btnAddAgendaTemplate.Visible = False
End If
End Sub
Измените сравнение на:
If DropDownList1.SelectedValue = "3" Then
btnAddAgendaTemplate.Visible = False
End If
Функция IsNumberic
просто подтвердите, является ли это число или нет, и не конвертируйте его в число, и не сравнивайте его с 3. Теперь SelectedValue является строкой, так что напрямую сравнивайте его с "3", нет причин для преобразования его в число, как оно есть,