0

当我使用同一 Web 表单的多个实例时,我有以下变量会产生问题。您能否让我知道除了共享之外我可以使用哪些变量来实现此目的?

Public strRoleType As String = String.Empty
Protected Shared isAreaSelected As Integer = 0
Protected Shared isStoreSelected As Integer = 0
Protected Shared isHeadOfficeSelected As Integer = 0
Protected Shared isRegionSelected As Integer = 0
4

2 回答 2

1

只需删除Shared,一切都会好起来的。

于 2010-03-25T17:03:22.423 回答
0

这是很多工作,但它创建了表单级存储

对于每个共享变量,将其转换为 WebForm 上的属性。然后将值存储在 ViewState 中

'default to 0 if blank, else convert to int
Public Property IsAreaSelected() As Integer
    Get
        Return If(ViewState("IsAreaSelected") Is Nothing, 0, Cint(ViewState("IsAreaSelected")))
    End Get
    Set(ByVal value As Integer)
        ViewState("IsAreaSelected") = value
    End Set
End Property

这样,值将保留在页面中。

请注意,我是即时编写的,而不是在 VS 中编写的,因此您可能需要对其进行调整。

于 2010-03-25T17:28:43.453 回答