DataListItem в выпадающий список или текстовое поле VB.Net

StackOverflow https://stackoverflow.com/questions/497499

  •  20-08-2019
  •  | 
  •  

Вопрос

У меня есть DataListItem, который потенциально может быть выпадающим списком или текстовым полем.Чтобы получить значение, мне нужно было бы сделать:

 CType(item.FindControl("myControl"), TextBox).Text

Или

CType(item.FindControl("myControl"), DropDownList).SelectedValue.ToString()

Проблема в том, что если это выпадающий список, который я получаю..

Невозможно привести объект типа 'System.Web.UI.WebControls.Выпадающий список' ввести 'System.Web.UI.WebControls.Текстовое поле'.

Есть ли способ проверить, примет ли CType значение перед его вводом?

Это было полезно?

Решение

Используйте TryCast:

Dim txt as TextBox = TryCast(item.FindControl("myControl"), TextBox)
If txt Is Nothing Then
    TryCast(item.FindControl("myControl"), DropDownList)
End If
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top