Mehrere Spalten im DataTextField der DropDownList

Leider ist es nicht möglich in der Eigenschaft DataTextField des DropDownList Controls mehr als eine Spalte anzugeben. Allerdings kann man mit Hilfe eines kleines SQL-Tricks diese Gegebenheit umgehen.

SELECT *, (Name + ' ' + Surname) AS FullName FROM [Persons]

Diese Syntax fasst zwei vorhandene Spalten zusammen und gibt diese unter dem Namen FullName im Ergebnis aus. Eingebaut in das SqlDataSource Control kann diese neue Spalte auch schon verwendet werden.

<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="" SelectCommand="SELECT *, (Name + ' ' + Surname) AS FullName FROM [Persons]"></asp:SqlDataSource>
<asp:DropDownList ID="DropDownList1" runat="server" DataSourceID="SqlDataSource1" DataTextField="FullName" DataValueField="ID"></asp:DropDownList>

Das Beispielprojekt kann hier runtergeladen werden.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>