2016-06-13 7 views
0

Ich habe eine RadTreeView, die nicht aktualisiert wird, wenn die Datenquelle ändert.Wie aktualisiere ich meine RadTreeView

Dies ist der Code in meinem Ascx.

<div class="demo-container size-thin" style="display: inline-block"> 
    <telerik:RadTreeView RenderMode="Lightweight" ID="AssessmentCriteriaTree" runat="server" Width="200px" Height="620px" 
     OnClientNodeClicked="OnClientNodeClicked" OnNodeDataBound="AssessmentCriteriaTree_NodeDataBound"> 
     <DataBindings> 
      <telerik:RadTreeNodeBinding Expanded="True"></telerik:RadTreeNodeBinding> 
     </DataBindings> 
    </telerik:RadTreeView> 
</div> 

Im Code hinter der Datenbindung passiert mit diesem Code.

DataTable dtTree = ds.Tables[0]; 
AssessmentCriteriaTree.DataTextField = "Val"; 
AssessmentCriteriaTree.DataFieldID = "ID"; 
AssessmentCriteriaTree.DataFieldParentID = "ParentID"; 
AssessmentCriteriaTree.DataSource = dtTree; 
AssessmentCriteriaTree.DataBind(); 

Beim Laden der Seite zunächst der Baum richtig gebaut wird, aber wenn der gleiche Code getroffen wird, dass die Datenquelle ändert, wird der Baum nicht ändern. Beim Debuggen des OnNodeDataBound-Ereignisses kann ich sehen, dass die neuen Daten verarbeitet werden, so dass es so aussieht, als ob das Teil korrekt funktioniert. Es wird einfach nicht in der Benutzeroberfläche aktualisiert.

+0

Wie und wann stellen Sie die Datenquelle ein (Pageinit, Control Postback, etc)? Verwenden Sie den Ajax-Manager oder aktualisieren Sie die Panels überhaupt? – Joel

+0

Dieser Code wird in page_load ausgeführt. Ich verwende keinen Ajax-Manager oder Update-Panels. – RUEMACHINE

Antwort

0

In einem anderen Abschnitt auf der Seite war, wo die Schaltfläche die Aktualisierung der Datenquelle ausgelöst wurde. Es war in einem RadAjaxPanel. Meine TreeView war nicht im RadAjaxPanel. Ich habe es hineingeschoben und es wird jetzt aufgefrischt.

0

Wenn sich die zugrunde liegende Datenquelle ändert, sollten Sie DataBind() in der Strukturansicht aufrufen, um die Daten zu aktualisieren.

+0

Ich rufe DataBind in der Strukturansicht auf, aber es wird nicht aktualisiert. Siehe den Code, den ich gepostet habe. – RUEMACHINE

+0

Wie und wo ändern Sie die Daten? –

Verwandte Themen