2012-04-03 23 views
0

Ich habe ernsthafte Gridview Probleme. Der rowcommand in meiner dynamisch erstellten Gridview wird nicht ausgelöst.rowcommand in dynamisch erstellten gridviews

Ich mache mehrere dieser Steuerelemente, und sie alle erscheinen gut mit den Gridviews, mit den richtigen Daten. Dies geschieht mit einem Klick auf die Schaltfläche und nicht auf page_load.

ich weiß, dass sie auf Postbacks verschwinden, so dass ich sie in Update-Panels platziert haben, zu vermeiden, dass die Gridviews zu verlieren (Bestücken sie dauert eine ganze Weile)

<asp:UpdatePanel ID="UpdatePanel1" runat="server"> 
<ContentTemplate> 
    <asp:GridView runat="server" ID="gvPhones" AutoGenerateColumns="false" OnRowDataBound="gvPhones_RowDataBound" 
      OnRowCommand="gvPhones_RowCommand"> 
</ContentTemplate> 
<Triggers> 
    <asp:AsyncPostBackTrigger ControlID="gvPhones" EventName="RowCommand" /> 
</Triggers> 

nach ihnen in dem Update setzen Panel, auf dem ersten Klick nichts passiert, zweiter Klick macht die alle Gridviews dissappear (wie in einem Postback war)

der Haltepunkt in der RowCommand Methode unten nie

erreicht ist
protected void gvPhones_RowCommand(object sender, GridViewCommandEventArgs e) 
{ 
    //do stuff 
} 
+0

Was passiert, wenn Sie die UpdatePanels entfernen? –

+0

verschwinden die Gridviews nach einem einzigen Klick, was vermutlich auf das Postback zurückzuführen ist. – KristianMedK

+0

ich bin mir nicht sicher, ob ich verstehe, warum muss es ohne updatepanels funktionieren? – KristianMedK

Antwort

0

Wenn Sie das Raster in Seitenlade wie verbindlich sind unter

dann die BindGrid get() aus! IsPostBack. Das bedeutet, dass Sie das Gitter bei jedem Postback neu binden müssen, wenn Sie das Raster zur Laufzeit erstellen.

Verwandte Themen