Telerik RadGrid nicht display auf die erste Page_Load aber doch auf postback

Ich habe eine Seite mit einem drop-down-Menü. Basierend auf der Auswahl in der drop-down-Menü die Daten geladen wird und füllt ein RadGrid. Ich bin mit einem benutzerdefinierten Steuerelement für das EditTemplate, so kann ich nicht verwenden radGrid.DataBind(). Stattdessen habe ich radGrid.MasterTableView.Rebind() in Verbindung mit einer NeedDataSource event-handler.

Mein problem ist, dass wenn ich das laden der Seite zunächst, ich füllen Sie die Dropdown-Liste und wählen Sie automatisch einen Wert (erste Position in der Liste) als Auslöser für das databinding auf die RadGrid. Ich kann Schritt für Schritt durch den code im debug-Modus und sehen, dass das raster wird mit Daten gefüllt, aber wenn die Seite angezeigt wird, wird es nicht gerendert. Wenn ich dann manuell wählen Sie ein Element aus der drop-down auslöst, die gleichen Gitter databinding-code, zeigt es richtig zweiten mal.

Wie komme ich zur Anzeige der raster der erstmaligen laden der Seite?

  • Kannst du deinen code von der NeedDataSource Methode?
  • Von debugging habe ich herausgefunden, dass es hat zu tun mit der Sicht Zustand des Gitters. Wenn ich EnableViewState = "false" dann wird der raster wird angezeigt, auf der ersten Seite zu laden. Jedoch, dass völlig Schläuche, die meine Benutzer-Steuerung, die verwendet wird, in der EditForm.
  • Warum sollte das deaktivieren der viewstate auf dem Netz verursachen, die das grid korrekt das erste mal die Seite geladen wird? Warum sollte die Aktivierung der viewstate auf dem Netz verursachen, die das grid NICHT korrekt das erste mal die Seite geladen wird? Wie kann ich die Vorteile der viewstate aktiviert, sondern auch die Anzeige des Gitters auf der ersten Seite zu laden?
  • Hier ist der code aus der NeedDataSource-Methode: protected void grdUnits_OnNeedDataSource(object source, GridNeedDataSourceEventArgs e) { grdUnits.DataSource = GridItems; }
InformationsquelleAutor Mark | 2010-03-17
Schreibe einen Kommentar