2013-02-04 5 views
7

hinzufügen Wenn ich einen Dropdownlist verwenden:Wie ein anfänglichen „wählen Sie“ Wert auf eine Dropdownlist

<asp:DropDownList ID="DropDownListSubContractors" runat="server" 
    DataTextField="Company_Name" DataValueField="id"> 
</asp:DropDownList> 

Welches Attribut verwende ich/set, die mich ‚--- Auswahl ---‘ verwenden können als Anfangsoption in der Dropdown-Liste anstelle des ersten Werts in der Liste.

+0

Ich bemerkte Kommentare über die Sicherstellung, dass das ListItem "--Select--" nicht ausgewählt ist. Hier ist, wie Sie eine andere Auswahl benötigen: http://stackoverflow.com/a/38727154/3347858 –

Antwort

14

können Sie

verwenden
<asp:DropDownList ID="DropDownListSubContractors" runat="server" AppendDataBoundItems="true" DataTextField="Company_Name" DataValueField="id"> 
    <asp:ListItem Text="---Select---" Value="0" /> 
</asp:DropDownList> 

Oder Sie können diese dynamisch hinter im Code hinzufügen, wie diese

DropDownListSubContractors.Items.Add(new ListItem("---Select---", "0")); 
+0

Sorry wegen der Verzögerung bei der Antwort, aber danke für die Antwort. Das Programm läuft immer noch, wenn der Benutzer nichts aus der Dropdown-Liste gewählt hat, aber dennoch die Submit-Taste drückt, wie kann ich es reparieren, so dass der Benutzer einen Wert aus dem Dropdown auswählen muss, bevor er auf die Schaltfläche klickt? aber der Code wird nicht ausgeführt und ein Fehler wird angezeigt. Bitte wählen Sie ... – John

+0

Sie können entweder erforderlich oder CustomValidator verwenden, um zu verhindern, dass Benutzer den Wert aus Dropdown auswählen. Sie können dies auch mit Javascript wie if (document.getElementById ("DropDownListSubContractors") bestätigen. Value == 0) {alert ('Bitte Wert auswählen');}. – nrsharma

7
<asp:DropDownList ID="DropDownListSubContractors" runat="server" AppendDataBoundItems="true" DataTextField="Company_Name" DataValueField="id"> 
    <asp:ListItem Text="---Select---" Value="" /> 
</asp:DropDownList> 

Sie können jetzt Ihre DropDown in der Code-behind wie gewohnt an die Datenquelle binden und diese Datenquelle braucht keinen Standardwert Artikel enthalten:

IEnumerable<MyViewModel> model = ... 
DropDownListSubContractors.DataSource = model; 
DropDownListSubContractors.DataBind(); 
+0

Sorry über die Verzögerung bei der Antwort, aber danke für die Antwort. Das Programm läuft immer noch, wenn der Benutzer nichts aus dem Drop-Down ausgewählt hat, aber trotzdem auf submit drückt. Wie kann ich das Problem beheben, damit der Benutzer einen Wert aus dem Dropdown auswählen muss, bevor er auf die Schaltfläche klickt? Oder sie können immer noch auf die Schaltfläche klicken, aber der Code wird nicht ausgeführt und ein Fehler wird angezeigt. Bitte wählen Sie ... – John

+0

Sie könnten dem Drop-down-Menü einen erforderlichen Validator zuweisen: http://stackoverflow.com/questions/2280559/how- add-a-requiredfieldvalidator-to-dropdownlist-control –

2

Sie können diese auf diese Weise tun:

Von Code hinter:

DropDownListSubContractors.Items.Insert(0, new ListItem("---Select---", string.Empty)); 

Hinweis: Wir verwenden Index 0 es das erste Element in der Liste zu machen.

+0

Sorry wegen der Verzögerung bei der Antwort, aber danke für die Antwort. Das Programm läuft immer noch, wenn der Benutzer nichts aus dem Drop-Down ausgewählt hat, aber trotzdem auf submit drückt. Wie kann ich das Problem beheben, damit der Benutzer einen Wert aus dem Dropdown auswählen muss, bevor er auf die Schaltfläche klickt? Oder sie können immer noch auf die Schaltfläche klicken, aber der Code wird nicht ausgeführt und ein Fehler wird angezeigt. Bitte wählen Sie ... – John

+0

John, erwägen, einen RequiredFieldValidator hinzuzufügen, damit der Benutzer nicht auf die Übergabeschaltfläche klicken kann, ohne aus der Auswahl zu wählen –

Verwandte Themen