---
title: "Knapp, räkna +1 varje gång"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/127867-knapp-räkna-1-varje-gång"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "ironhead"
published: "2005-05-09T07:32:34.000Z"
updated: "2005-05-10T11:22:56.000Z"
replies: 8
views: 321
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/127867-knapp-räkna-1-varje-gång"
---

# Knapp, räkna +1 varje gång

## #1 — ironhead, 2005-05-09T07:32Z

Hej!

Ponera att jag har en knapp och en räknare
.aspx

```
<form id="Form1" method="post" runat="server">
<asp:Button id="btnNext" runat="server" Text="Plus 1"></asp:Button>
</form>
```

Code-Behind(VB):

```
Dim Cnt As Integer = 1
    Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNext.Click
        Cnt += 1
        Response.Write(Cnt)
    End Sub
```

...och att jag vill att "Cnt" ska räkna +1 varje gång jag klickar på knappen, hur gör jag då?
I detta fall räknas det bara upp 2 och sen stannar det där...

Permalänk: https://www.webforum.nu/p/127867

## #2 — Nickemannen, 2005-05-09T08:43Z

Du dimmar ju om variabeln varje gång du laddar sidan. 
Dim Cnt As Integer = 1

Permalänk: https://www.webforum.nu/p/1607230

## #3 — Gladh, 2005-05-09T10:21Z

Du måste behålla värden för knappen mellan de olika sidanropen. Om det endast är mellan olika postbacks på samma sida så kan du använda dig av ViewStaten. 

Om du skall hålla värdet mellan olika sidanrop så måste du använda dig av Session/Cookies.

Om det skall vara så att om en användare trycker på knappen så skall det räknas upp globalt för alla användare, så kan du använda dig av Cachen eller ännu bättre göra din variable static, vilket då kommer att göra så att alla besökare får se samma värde. Tänk dock på att du måste göra läsning och skrivning trådsäkert så att du inte får att olika trådar försöker skriva samtidigt, det kommer genererar fel.

\- M

Permalänk: https://www.webforum.nu/p/1607254

## #4 — ironhead, 2005-05-09T19:35Z

> **Gladh skrev:**
>
> Om det endast är mellan olika postbacks på samma sida så kan du använda dig av ViewStaten.

Japp, det kommer att vara på samma sida, hur kan jag använda viewstate för detta?

Permalänk: https://www.webforum.nu/p/1607490

## #5 — ironhead, 2005-05-09T19:50Z

> **Nickemannen skrev:**
>
> Du dimmar ju om variabeln varje gång du laddar sidan. 
> Dim Cnt As Integer = 1

Den ligger ju utanför subben, räcker inte det?

Permalänk: https://www.webforum.nu/p/1607496

## #6 — Nickemannen, 2005-05-09T19:54Z

> **ironhead skrev:**
>
> > **Nickemannen skrev:**
> >
> > Du dimmar ju om variabeln varje gång du laddar sidan. 
> > Dim Cnt As Integer = 1
>
> 
> Den ligger ju utanför subben, räcker inte det?

Inte om du inte använder PageBack

Permalänk: https://www.webforum.nu/p/1607497

## #7 — Jesper T, 2005-05-09T20:11Z

```
        Sub page_Load(obj as object, e as eventargs)
		myCounter.text = Viewstate("mycounter")
	End sub
	Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNext.Click
		ViewState("mycounter") +=1
	End sub
```

Så här kanske?

Permalänk: https://www.webforum.nu/p/1607507

## #8 — ironhead, 2005-05-09T21:13Z

> **Jesper T skrev:**
>
> ```
>         Sub page_Load(obj as object, e as eventargs)
> 		myCounter.text = Viewstate("mycounter")
> 	End sub
> 	Private Sub btnNext_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNext.Click
> 		ViewState("mycounter") +=1
> 	End sub
> ```
>
> Så här kanske?

Det där fick jag inte alls att funka....myCounter visar ingenting alls :-/

Permalänk: https://www.webforum.nu/p/1607544

## #9 — ironhead, 2005-05-10T11:22Z

heh!  :r  Nu fick jag ovanstående att fungera, vet inte varför det inte funkade sist.
Problemet är bara att när jag klickar på knappen första gången, så är viewstate ingenting, så den räknar inte heller upp med +1, hur kan man göra så att den gör det med detsamma?

Permalänk: https://www.webforum.nu/p/1607789

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/127867-knapp-räkna-1-varje-gång
