我有一些語法問題。我習慣了C#,剛開始VB.NET。當它循環遍歷列表中的項目時,我試圖執行while
循環。我做錯了什麼語法?雖然在VB.NET中循環
While oResponse.outputControl.Items(i) <> Nothing
//Do something
End While
我有一些語法問題。我習慣了C#,剛開始VB.NET。當它循環遍歷列表中的項目時,我試圖執行while
循環。我做錯了什麼語法?雖然在VB.NET中循環
While oResponse.outputControl.Items(i) <> Nothing
//Do something
End While
不要忘了你的遞增計數器:
While oResponse.outputControl.Items(i) <> Nothing
'Do something
i += 1
End While
如果這是一個參考類型(你d idn't說,但它可能是),則無法將其與<>
操作比較Nothing
:
While oResponse.outputControl.Items(i) IsNot Nothing
'Do something
i += 1
End While
但你真正想要的是什麼,也許是一個For Each循環:
For Each Item In oResponse.outputControl.Items
'Do Something
Next Item
還有一件事:oResponse
變量中的匈牙利疣有什麼特點?這種風格不再被推薦,現在微軟甚至特別推薦它。 VB.Net也有一個名爲「默認屬性」的功能,它可能會使這更簡單。綜合起來(現在包括上面評論中的ListItem類型):
For Each Item As ListItem In Response.outputControl
'Do Something
Next Item
「還有一件事:oResponse變量中的匈牙利疣是怎麼回事?」不是我的代碼。我昨天剛開始編寫代碼。現在我專注於功能,然後回頭去改變所有這些東西。 – cjohnson2136
嘗試:
While oResponse.outputControl.Items(i) Is Nothing
'do something
End While
你也可以這樣做,如果你想成爲特別的老同學:
Do
'do something
Loop Until Not oResponse.outputControl.Items(i) Is Nothing
你會得到什麼錯誤? – SLaks
問題是<>沒有任何部分,嘗試是沒有代替。 – alundy
運營商'<>'沒有爲類型'System.Web.UI.Webcontrols.ListItem'和'System.Web.UI.WebControls.ListItem'定義' – cjohnson2136