asp.net dropdownlist - ajouter ligne vide avant de db valeurs
Sur ma page j'ai un DropDownList
qui je remplir avec les valeurs de base de données à partir d'un SqlDataSource
(voir code ci-dessous).
Comment puis-je ajouter mes propres texte ou une ligne vide avant les valeurs?
<asp:DropDownList ID="drpClient" runat="server" Width="200px"
AutoPostBack="True" DataSourceID="dsClients" DataTextField="name"
DataValueField="client_id">
</asp:DropDownList>
<asp:SqlDataSource ID="dsClients" runat="server"
ConnectionString="my_connection_string"
ProviderName="System.Data.SqlClient"
SelectCommand="SELECT [client_id], [name] FROM [clients]">
</asp:SqlDataSource>
Grâce.
P. S. Ne vous recommandons l'utilisation d'un SqlDataSource
ou est-il préférable de remplir une autre façon?
- Ce porte sur: stackoverflow.com/questions/267064/...
InformationsquelleAutor thegunner | 2009-06-11
Vous devez vous connecter pour publier un commentaire.
Vous pouvez simplement ajouter un ListItem à l'intérieur de la DropDownList de Balisage. Toutes les valeurs de la source de données seront ajoutées par la suite.
Il est facile de rater, alors n'oubliez pas le
AppendDataBoundItems
attribut ai-je ajouté.Je n'ai pas vraiment testé, mais je suis en supposant que vous pourrait ajouter un point après avoir lié la la liste déroulante. Vous pouvez ajouter cet événement à toute liste déroulante vous souhaitez ajouter cette boîte vide de.
- Je résoudre la modification de la commande select ajout d'une option vide:
Salutations!!!
De rasoir-mise en œuvre de style à moi, il ressemble à ceci:
Et en javascript, qui est exécutée lors de la charge, j'ai ceci:
Il y a aussi la solution plus flexible via discrète de validation (ne pas compter sur HTML5):
Bien sûr, il y a une vérification côté serveur, trop.
Je ne pense pas que c'est une bonne idée de faire face à des classes.
Par exemple, tout ce que je montre dans la page est un peu de classe. Cette classe possède plusieurs énumérable type de propriétés. Ce serait un cauchemar pour répliquer toutes ces propriétés, mais en les rendant nullable dans certains classe supplémentaire que certains ont suggéré ici sur stackoverflow.
Après tout, pourquoi devrais-je changer de logique d'affaires pour le bien de certains balisage spécifique? Au lieu de cela, je m'occupe de tout grâce à javascript et quelques modèles de contrôles.