Hej. Tack för svaret. Nu ser min kod ut såhär, (träningspass istället för som tidigare användare): Nu vet jag nog vad som är fel - du skapar troligen listan i page-load skulle jag tippa. I och med att du gör det så slår du ut informationen. Genom att när du skapar datamängden så gör du det bara om det inte är postback - så borde det fungera bättre... har din collection implementerat IEnumerable så kan du göra så här istället. Tack igen! kanske är något annat som är galet på sidan. Problemet är löst: Aha du hade lagt till items innan du band collectionen antaligen därför min kodsnutt inte funkade utan AppendDataboundItems satt till true.Dropdownlist Databind?
Har ett problem som jag antar är ganska basic. Saker är den att jag fyller en dropdownlista från en collection med användareobjekt.
foreach (Användare användare in användareCollection)
{
DropDownList4.Items.Add(användare.Namn);
}
Så långt inga problem, alla namnen visas fint i listan. Problemet är när jag sedan försöker hämta ut ett värde ur listan.
String användare = DropDownList1.SelectedItem;
Vad jag än väljer i listan så får jag bara det första elementet. Jag antar att det beror på att jag måste göra någon slags databind mellan min dropdownlista och min collection med objekt?
Vore tacksam för tips!
/AndreasSv:Dropdownlist Databind?
foreach (TräningsPass träningsPass in träningsPassCollection)
{
string x = "";
x +=1;
DropDownList2.Items.Add(new ListItem(träningsPass.Namn,x));
}
String pass = DropDownList2.SelectedItem.Text;
Dock får jag fortfarande bara ut det första elementet från dropdownlistan vad jag än väljer.
/ASv: Dropdownlist Databind?
if (!IsPostBack) {
foreach (TräningsPass träningsPass in träningsPassCollection)
{
string x = "";
x +=1;
DropDownList2.Items.Add(new ListItem(träningsPass.Namn,x));
}
}Sv:Dropdownlist Databind?
dropdownlist2.DataSource = träningspasscollection;
dropdownlist2.DataTextField = "Namn";
dropdownlist2.DataValueField = "Id"; // namn på det fält du vill ha i value från ditt objekt här
dropdownlist2.DataBind();
gör det en gång som Pelle sa med isPostback kontrollen så ska det funka.Sv: Dropdownlist Databind?
När jag la till Pelles kod fick jag ett NullReferenceException.
Samma sak när jag försöker med Andreas kod.
/ASv:Dropdownlist Databind?
vad är träningspassCollection för någon typ ?
är den en List<t> ? Sv:Dropdownlist Databind?
TräningsPassCollection träningsPassCollection = TräningsPassFactory.FindAll();
DropDownList2.Items.Add(new ListItem("[Välj träningspass]", Guid.Empty.ToString()));
DropDownList2.AppendDataBoundItems = true;
DropDownList2.DataSource = träningsPassCollection;
DropDownList2.DataTextField = "Namn";
DropDownList2.DataValueField = "ID";
DropDownList2.DataBind();
Tack för hjälpen!
/AndreasSv: Dropdownlist Databind?
Jag brukar köra insert på "välj items" efter jag bundit listan. men det ger ju samma resultat så spelar antagligen inte någon roll på vilket sätt man gör det.