Forums Neueste Beiträge
 

GridView DataSourceID über Ausdruck setzen

02/12/2009 - 10:31 von Torsten Kraus | Report spam
Hallo,

ich schaff es nicht, die Property 'DataSourceID' eines GridViews an
einen Ausdruck zu binden. ( DataSourceID='<%# ... %>' )

Ich habe eine ComboBox in der der Nutzer die Abfrage
auswàhlt.(cbDataSource)
cbDataSource.SelectedValue soll dann die DataSourceId der anzuzeigenden
Daten sein.

Die DataSourceID des Grids wollte ich jetzt wie folgt setzen:
DataSourceID='<%# cbDataSource.SelectedValue %>'

klappt aber nicht. Das Grid ist immer leer.
Die DataSource enthàlt anscheinend zum Zeitpunkt der Bindung an das Grid
noch keine Daten.

Hat jemand einen Tip für mich, was da falsch ist?

danke



Hier nochmal das Markup (gekürzt):

<asp:DropDownList ID="cbDataSource" runat="server" AutoPostBack="True">
<asp:ListItem Value="ds1">eins</asp:ListItem>
<asp:ListItem Value="ds2">zwei</asp:ListItem>
<asp:ListItem Value="ds3">drei</asp:ListItem>
</asp:DropDownList>

<asp:GridView ID="gv" DataSourceID='<%# cbDataSource.SelectedValue %>'>
<Columns>

</Columns>
</asp:GridView>

<asp:SqlDataSource ID="ds1"
SelectCommand="…">

</asp:SqlDataSource>

<asp:SqlDataSource ID="ds2"
SelectCommand="…">

</asp:SqlDataSource>

<asp:SqlDataSource ID="ds3"
SelectCommand="…">

</asp:SqlDataSource>
 

Lesen sie die antworten

#1 Karsten Samaschke
02/12/2009 - 13:15 | Warnen spam
Torsten Kraus schrieb:

Hat jemand einen Tip für mich, was da falsch ist?



Binde die DataSource manuell im Code-Bereich nach dem
SelectedIndexChanged-Ereignis. Und bevor Du DataBind() auf dem GridView
aufrufst.

Mit freundlichen Gruessen / Best regards,

Karsten Samaschke
IT-Development, IT-Training, IT-Coaching

Nerd: http://www.aspextra.de
Blog: http://karsan.de
Family: http://www.familyblogger.de
Community: http://www.aspnetzone.de

Sent via Thinkpad X200t / Windows 7

Ähnliche fragen