DataListItem para DropDownList ou TextBox VB.Net
-
20-08-2019 - |
Pergunta
Eu tenho um DataListItem que pode potencialmente ser um dropdownlist ou uma caixa de texto. Para obter o valor que eu precisaria fazer:
CType(item.FindControl("myControl"), TextBox).Text
ou
CType(item.FindControl("myControl"), DropDownList).SelectedValue.ToString()
O problema é, se é um dropdownlist Eu recebo ..
Não é possível para objeto elenco de tipo 'System.Web.UI.WebControls.DropDownList' digitar 'System.Web.UI.WebControls.TextBox'.
Existe uma maneira de verificar se o CType vai demorar antes Ctyping-lo?
Solução
Use TryCast:
Dim txt as TextBox = TryCast(item.FindControl("myControl"), TextBox)
If txt Is Nothing Then
TryCast(item.FindControl("myControl"), DropDownList)
End If
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow