Hej Pellesoftare! John. Visst kan jag använda det Id:t men det är inte problemet... Hum. Value kan ju vara sju sedan kan du ju plocja ut alla 7 o lägga dem i den nya. löste det...DropDownList beroende av en annan DropDownList
Har ett litet problem:
Jag har en DropDownList (ddlFlygplan) där jag presenterar FLYGPLAN och som är bunden till en DataTable som har typ följande innehåll:
Flygid | Flygplansnamn | AntalPlatser
------------------------------------------
1 | Cessna | 5
------------------------------------------
2 | Cessna2 | 7
------------------------------------------
(C#-koden för bindningen ):
DataSet adoDS = new DataSet();
adoDS = bk.HamtaFlygplan();
ddlFlygplan.DataSource = adoDS.Tables["Flygplan"];
ddlFlygplan.DataTextField = "Flygplansnamn";
ddlFlygplan.DataValueField = "Flygid";
ddlFlygplan.DataBind();
Detta funkar ju bra, men nu vill jag ladda en annan DropDownList beroende på vad som är valt i ddlFlygplan.
Ex. Om man väljer "Cessna2" så vill jag att den andra DropDownListen ska fyllas med 1,2,3,4,5,6,7
Hur ska man lösa detta?
Kan man göra en select på DataTable:n å hämta "AntalPlatser" för det som är valt i DropDownListen å sedan loopa igenom så många ggr å göra Items.Add() eller...?
/John "Raxxa" KjellbergSv: DropDownList beroende av en annan DropDownList
Du har ju ett värde i din dropdownlist. ex ett id kan du inte med detta ID bara hämta ny data du binder till din nya dropdownlist?
mvh JohanSv:DropDownList beroende av en annan DropDownList
problemet är att jag vill hämta "AntalPlatser" från DataTable:n där "Flygid" = det id som valdes i DropDown ...och sedan använda "AntalPlatser" för att få ut alla talen 1 t.o.m. "AntalPlatser"
..så om jag väljer Id = 2 i första DropDown ("Cessna2") så vill jag hämta "AntalPlatser"
för "Cessna2" från DataTable:n - vilket är 7st - och sedan fylla DropDownList nr2 med alla talen från 1 t.o.m. 7
----------------------------------------------------------------------------------
OBS att jag vill alltså hämta data från DataTable:n - INTE från databasen
----------------------------------------------------------------------------------
Det finns ju en Select-metod för DataTable-klassen men jag e inte säker på om jag använder den rätt
Försökte me nåt sånt här (bara för att få upp "AntalPlatser" i DropDownList nr2 till att börja med):
ddlAntal_pass.DataSource = adoDS.Tables[0].Select("Flygid = " + ddlFlygplan.SelectedIndex);
ddlAntal_pass.DataTextField = "AntalPlatser";
ddlAntal_pass.DataBind();
...men det funka inteSv: DropDownList beroende av en annan DropDownList
on item seelct Drop1... get Value vilket blir 7
sedan i Drop2 binda dessa sju till dropdownen. Om du vill plocka poster från en DataTabel här oxå är det ju inga problem då du kan plocka ut sånt som du vill binda.
Mvh JohanSv:DropDownList beroende av en annan DropDownList
bytte ValueField på DropDown:en (jag tror det va så du menade Johan, eller hur...)
ddlFlygplan.DataValueField = "AntalPlatser";
...och sen gjorde jag såhär:
private void ddlFlygplan_SelectedIndexChanged(object sender, System.EventArgs e)
{
ddlAntal_pass.Items.Clear();
for(int i = 1; i <= Convert.ToInt32(ddlFlygplan.SelectedValue); i++)
{
ddlAntal_pass.Items.Add(Convert.ToString(i));
}
}
...funkade fint....tack för hjälpen!