---
title: "Problem med bläddring i DataList"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/113613-problem-med-bläddring-i-datalist"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "soham"
published: "2004-10-15T13:59:05.000Z"
updated: "2004-10-15T13:59:05.000Z"
replies: 0
views: 170
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/113613-problem-med-bläddring-i-datalist"
---

# Problem med bläddring i DataList

## #1 — soham, 2004-10-15T13:59Z

Jag har en knasigt problem som jag nu stirrat mig blind på.
Jag har en datalist som jag visar bilder och som har två länkar för att bläddra fram och tillbaka.
Men av nån anledning när jag bläddrar fram ett steg så fylls min datalist om igen och en del bilder från föregående sida visas igen fast i oordning. 

Jag har tre osynliga textboxar som håller reda på max antal sidor i min datalist, vilken sida jag är på samt totalt antal items som datalisten fylls med.
De heter **intPageSize** , **intRecordCount**  och **intCurrIndex** 

Detta är min kod.

i Page_Load:

			if(!Page.IsPostBack)
			{
				intPageSize.Text = "18";
				intCurrIndex.Text = "0";
				fillDataList();
			}

i fillDataList:

		private void fillDataList()
		{

			OdbcConnection con = new OdbcConnection(// Databas connection
			DataSet ds = new DataSet();
			OdbcDataAdapter adpt = new OdbcDataAdapter(" \*\* hämtar från databas" \*\* ", con);
			if(!Page.IsPostBack)
			{
				adpt.Fill(ds);
				intRecordCount.Text = ds.Tables\[0\].Rows.Count.ToString();
				ds = null;
				ds = new DataSet();				
			}

			adpt.Fill(ds, Convert.ToInt32(intCurrIndex.Text), Convert.ToInt32(intPageSize.Text),"Sales");
			
			imageList.DataSource = ds.Tables\[0\].DefaultView;
			imageList.DataBind();

			int pageCount;

			if (Convert.ToInt32(intRecordCount.Text) % Convert.ToInt32(intPageSize.Text) == 0)
				pageCount = Convert.ToInt32(intRecordCount.Text) / Convert.ToInt32(intPageSize.Text);
			else
				pageCount = Convert.ToInt32(intRecordCount.Text) / Convert.ToInt32(intPageSize.Text) + 1;

			
			if(Convert.ToInt32(intCurrIndex.Text) == (pageCount-1))
				showNextLink.Enabled = false;
			else
				showNextLink.Enabled = true;
			
			if(Convert.ToInt32(intCurrIndex.Text) == 0)
				showPreviousLink.Enabled = false;
			else
				showPreviousLink.Enabled = true;

			con.Close();
		}

och till sist mina fram, tillbaka länkar:

		private void showPreviousLink_Click(object sender, System.EventArgs e)
		{
			showNextLink.Enabled = true;

			if(Convert.ToInt32(intCurrIndex.Text) \> 0)
			{
				int t = Convert.ToInt32(intCurrIndex.Text) - 1;
				intCurrIndex.Text = t.ToString();
				fillDataList();
				if(Convert.ToInt32(intCurrIndex.Text) == 0)
					showPreviousLink.Enabled = true;
			}
			fillDataList();
		}

		private void showNextLink_Click(object sender, System.EventArgs e)
		{
			showPreviousLink.Enabled = true;

			if(Convert.ToInt32(intCurrIndex.Text) \< (Convert.ToInt32(intRecordCount.Text) -1 )) 
			{
				int t = Convert.ToInt32(intCurrIndex.Text) + 1;
				intCurrIndex.Text = t.ToString();
				fillDataList();
				if(Convert.ToInt32(intCurrIndex.Text) == (Convert.ToInt32(intRecordCount.Text) -1 )) 
					showNextLink.Enabled = false;
			}
			fillDataList();
		}

Jag antar att det är något knas med hur dataset fylls men jag kan inte lista ut vad det är.
Är det nån som har gjort liknade och har en lösning eller ser nån vad för fel jag gjort?

Tacksam för hjälp.

Soham

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/113613-problem-med-bläddring-i-datalist
