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.
Wie und wann stellen Sie die Datenquelle ein (Pageinit, Control Postback, etc)? Verwenden Sie den Ajax-Manager oder aktualisieren Sie die Panels überhaupt? – Joel
Dieser Code wird in page_load ausgeführt. Ich verwende keinen Ajax-Manager oder Update-Panels. – RUEMACHINE