我已经完成了一些 C++ 编程,但我是 c# 的新手。
我编写了一个简单的应用程序来计算用户点击按钮的次数,然后在按钮上显示该计数。
在第一次点击时有效,但之后它保持在 1。有什么建议吗?提前致谢
public partial class Default : System.Web.UI.Page
{
private int clickcount = 0;
public virtual void button1Clicked (object sender, EventArgs args)
{
clickcount++;
button1.Text = "You clicked me "+clickcount.ToString()+" time";
}
public virtual void GreetButtonClicked (object sender, EventArgs args)
{
GreetButton.Text = "Hello "+TextInput.Text;
}
}
最佳答案
每次创建页面时,您都将计数设置为零。这:
private int clickcount = 0;
几乎和这个一样:
private int clickcount;
public Default()
{
clickcount = 0;
}
由于每次请求页面时都会调用构造函数,因此您总是会将值重置为零。
如何解决这个问题取决于您要计算的内容。例如,如果您想计算当前 session 中的点击次数,那么您应该使用 session 变量来存储计数。
我建议您阅读以下网页,以全面了解可以存储状态的位置以及最适合不同用途的存储类型:
关于c# - 为什么我的计数器不增加?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10971421/