如何在vb asp.net2010中获取数组元素作为输出
在这个程序中,我创建了一个数组,当单击get按钮时,它不会显示任何输出,因为str变量为空。我应该如何获得正确的输出如何在vb asp.net2010中获取数组元素作为输出,asp.net,vb.net,Asp.net,Vb.net,在这个程序中,我创建了一个数组,当单击get按钮时,它不会显示任何输出,因为str变量为空。我应该如何获得正确的输出 Partial Class dynamic_array Inherits System.Web.UI.Page Dim s(2) As String Dim str As String Protected Sub btn_save_Click(sender As Object, e As System.EventArgs) Handles b
Partial Class dynamic_array
Inherits System.Web.UI.Page
Dim s(2) As String
Dim str As String
Protected Sub btn_save_Click(sender As Object, e As System.EventArgs) Handles btn_save.Click
Dim i As Integer = 0
For i = 0 To s.Length - 1
s(i) = InputBox("enter name " + (i + 1).ToString)
Next
End Sub
Protected Sub btn_get_Click(sender As Object, e As System.EventArgs) Handles btn_get.Click
Dim i As Integer = 0
str = ""
For i = 0 To s.Length - 1
str &= s(i) + vbCrLf
Next
MsgBox(str)
End Sub
End Class
在Asp.Net中,页面级别上设置的所有变量在每次回发时都会重置。这就是为什么s变量在点击get按钮时总是为空 例如,您可以将此信息保存在
我鼓励您熟悉Asp.Net web表单的基本状态管理:您可以使用会话或视图状态来存储数组值 像这样试试
Partial Class dynamic_array
Inherits System.Web.UI.Page
Dim s(2) As String
Dim str As String
Protected Sub btn_save_Click(sender As Object, e As System.EventArgs) Handles btn_save.Click
Dim i As Integer = 0
For i = 0 To s.Length - 1
s(i) = InputBox("enter name " + (i + 1).ToString)
Next
ViewState("Array")=s
End Sub
Protected Sub btn_get_Click(sender As Object, e As System.EventArgs) Handles btn_get.Click
Dim i As Integer = 0
str = ""
s= ViewState("Array")
For i = 0 To s.Length - 1
str &= s(i) + vbCrLf
Next
MsgBox(str)
End Sub
End Class
希望这会有所帮助,如果有帮助,请标记为有用。@Terror.Blade现在它是可见的(代码重新格式化)
Partial Class dynamic_array
Inherits System.Web.UI.Page
Dim s(2) As String
Dim str As String
Protected Sub btn_save_Click(sender As Object, e As System.EventArgs) Handles btn_save.Click
Dim i As Integer = 0
For i = 0 To s.Length - 1
s(i) = InputBox("enter name " + (i + 1).ToString)
Next
ViewState("Array")=s
End Sub
Protected Sub btn_get_Click(sender As Object, e As System.EventArgs) Handles btn_get.Click
Dim i As Integer = 0
str = ""
s= ViewState("Array")
For i = 0 To s.Length - 1
str &= s(i) + vbCrLf
Next
MsgBox(str)
End Sub
End Class