---
title: "Dynamiska droplister i c#"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/103606-dynamiska-droplister-i-c"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "soham"
published: "2004-05-14T08:23:13.000Z"
updated: "2004-05-14T15:03:34.000Z"
replies: 1
views: 248
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/103606-dynamiska-droplister-i-c"
---

# Dynamiska droplister i c#

## #1 — soham, 2004-05-14T08:23Z

Jag har en sida där jag lägger till olika kategorier och man kan även lägga till kategorin som underkategori till en annan kategori, alltså nästlade.

Nu vill jag loopa upp kategorierna i den ordning de tillhör en superkategori i dynamiska droplister med en "visa" knapp brevid varje. 
Det innebär att man måste fylla varje droplist med respektive parentId de har. Men ska man göra detta i en datalist/repeater?
Och hur plockar man ut värdena när man klickar på knappen "visa"?

Någon som har ett smart tips hur jag ska lösa detta?

Tacksam för hjälp

Soham

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

## #2 — soham, 2004-05-14T15:03Z

Ok.. Jag ger lite mer att bita i..

Jag har löst det halvägs eller nåt.

Gjorde en asp:table och sen skapar jag en droplist som har superkategorierna och en statisk länk brevid.
Sen har jag en selectedindexchanged på droplisten som skapar en ny droplist under med en ny länk brevid.
Funktionen ser ut följande
\[KOD\]

private void fillTbl(int ID)
		{

			// koppling till databas//

			DropDownList list = new DropDownList();
			ListItem item = new ListItem("--Välj kategori--", "0");
			list.Items.Add(item);
			
			LinkButton link = new LinkButton();

			int intID = 1;
			string listID = "lst", linkID = "lnk"; 

			while(myReader.Read())
			{
				
				intID++;
				listID += intID.ToString();
				linkID += intId.ToString();

				TableCell cell1 = new TableCell();
				cell1.Width = 150;

				//---fyller min droplist

				list.CssClass = "textfield_W180";
				list.AutoPostBack = true;
				list.ID = listID ;
				item = new ListItem( myReader\["Name"\].ToString(), myReader\["ID"\].ToString() );
				list.Items.Add(item);
				//list.SelectedIndexChanged += new System.EventHandler(this) //en ny funktion???
				cell1.Controls.Add(list);
				
				TableCell cell2 = new TableCell();

				//---fyller min link			

				link.Text = "Visa";
				link.ID = linkID;
				cell2.Controls.Add(link);
				TableRow row1 = new TableRow();
				row1.Cells.Add(cell1);
				row1.Cells.Add(cell2);

				//---fyller min asp:table

				Tbl.Rows.Add(row1);
			}
		}

KOD\] 

..och det funkar en nivå ner. Alltså jag får ut de kategorier som ligger under den första.
Men nästa selectindexchanged på en nivå ner har jag ingen aning om hur jag ska lösa. Har provat med att sätta en egen funktion efter "this." men det funkar ej.

Hur plockar man ut id på dynamiskt skapade kontroller?
Och hur kan man få droplisten att köra en kopplad selectedindexchanged?

Om vi varit inne på dustin.se så förstår ni nog hur jag menar. Fast jag tror att de kör med tre fasta nivåer.

Någon som gjort nåt liknande eller har någon lösning?

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/103606-dynamiska-droplister-i-c
