2009-01-30 45 views
1

我有一個DataListItem可能是一個下拉列表或文本框。要獲得價值,我需要做的事:DataListItem DropDownList或TextBox VB.Net

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

或者

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

的問題是,如果它是一個下拉列表,我得到..

無法轉換 類型的對象'System.Web.UI.WebControls.DropDownList' 鍵入 'System.Web.UI.WebControls.TextBox'。

有沒有辦法檢查CType是否會在Ctyping之前?

回答

1

使用TryCast:

Dim txt as TextBox = TryCast(item.FindControl("myControl"), TextBox) 
If txt Is Nothing Then 
    TryCast(item.FindControl("myControl"), DropDownList) 
End If 
+0

美麗的..謝謝。 – madcolor 2009-01-30 22:41:41

相關問題