限制按钮使用计数限制

时间:2015-04-25 11:21:02

标签: vb.net visual-studio-2010 webforms

我想制作一个按钮,然后根据点击次数限制它 到目前为止,我还没有成功,但这是我走了多远。 这是我的按钮

<asp:Button ID="btnClearSesson" runat="server" Text="Reset"  onclick="btnClearSesson_Click" />

这就是我正在做的事情

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

Dim lUserName As String
Static count As Integer

count = count + 1

lUserName = HttpContext.Current.User.Identity.Name

If count < 10 && lUserName = "ADMIN" Then

  btnClearSesson.Visible = True

  Else

  btnClearSesson.Visible = False

End If

End Sub 

所以我的问题是计数再次开始而不是增加

单击时按钮必须增加计数,然后如果count大于10,它将停止显示按钮

2 个答案:

答案 0 :(得分:0)

您已在页面加载中声明了静态变量,因此每次页面加载时都会刷新它

所以用全局范围声明它  像这样

Static count As Integer
Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

Dim lUserName As String


count = count + 1

lUserName = HttpContext.Current.User.Identity.Name

If count < 10 && lUserName = "ADMIN" Then

  btnClearSesson.Visible = True

  Else

  btnClearSesson.Visible = False

End If

End Sub 

还有一件事你应该增加按钮点击事件处理程序中的计数而不是页面加载。

希望这会对你有所帮助。

答案 1 :(得分:0)

您将代码置于Page Load事件中,而不是单击事件

请尝试以下代码:

Static count As Integer

Protected Sub btnClearSesson_Click(ByVal sender As Object, ByVal e As System.EventArgs) 

   Dim lUserName As String = HttpContext.Current.User.Identity.Name
   count +=1
   btnClearSesson.Visible = count < 10 && lUserName = "ADMIN"

End Sub 

在页面加载中,如果用户没有单击按钮,但刷新页面,则计数将以任何方式递增。