Mam to aspx-Code: (próbka)Dodawanie ListItems do DropDownList z ogólnej listy
<asp:DropDownList runat="server" ID="ddList1"></asp:DropDownList>
Z tym kodzie:
List<System.Web.UI.WebControls.ListItem> colors = new List<System.Web.UI.WebControls.ListItem>();
colors.Add(new ListItem("Select Value", "0"));
colors.Add(new ListItem("Red", "1"));
colors.Add(new ListItem("Green", "2"));
colors.Add(new ListItem("Blue", "3"));
ddList1.DataSource = colors;
ddList1.DataBind();
Wyjście wygląda następująco:
<select name="ddList1" id="ddList1">
<option value="Select Value">Select Value</option>
<option value="Red">Red</option>
<option value="Green">Green</option>
<option value="Blue">Blue</option>
</select>
Moje pytanie brzmi: Dlaczego moje wartości (liczby) zniknęły, a tekst został użyty jako wartość ORAZ w tekście? Wiem, że to działa, jeśli używam metody ddList1.Items.Add(New ListItem("text", "value"))
, ale potrzebuję użyć ogólnej listy jako źródła danych z innych powodów.
Dlaczego _eded_, aby ustawić to pole? Jak już powiedziałem, działa, gdy ListItem jest dodawany bezpośrednio do kolekcji DropDownList.Items. Wypróbowałem twoją sugestię i to nie pomogło. Zobacz moje zaktualizowane pytanie. – Espo
Rozumiem. Zaktualizowałem odpowiedź i dodałem informację, aby to naprawić. –
To działa, dziękuję! – Espo