none
SharePoint:SPTreeView --> Was kniffliges... RRS feed

  • Frage

  • Hallo zusammen,
    jeder kennt die Strukturansicht einer SP-Webseite. Wird diese aktiviert, so kann man über die Schnellnavigation problemlos in entsprechende Bibliotheken, Unterseiten usw. navigieren. Im Standard zeigt der Baum die aktuelle Ebene und alle darunterliegenden Ebenen an. D.h. der Benutzer hat über diese Strukturansicht nicht die Möglichkeit eine Ebene nach oben zu navigieren.
    Was möchte ich erreichen: die Strukturansicht soll zum einen nur Web-Seiten anzeigen. Zum anderen möchte ich in alle Richtungen navigieren können. Im übertragenen Sinne soll am Ende eine Navigation wie zB im Windows-Explorer entstehen. Im SP wird dann eben durch Seiten navigiert und nicht durch Ordner wie im Windows Explorer.
    Im Web gibt es eine Vielzahl an Hinweisen, wie die Funktionen SharePoint:SPHierarchyDataSourceControl und SharePoint:SPTreeView entsprechend zu konfigurieren sind.
    Aktueller Stand: Meine Navigation funktioniert, es werden die Seiten richtig dargestellt und ich kann in alle Richtungen navigieren.
    Problem: aktiviere ich über "Websiteaktionen" --> "Seite bearbeiten" den Bearbeitungsmodus, dann bricht die Seite mit dem Fehler "Object reference not set to an instance of an object." ab.
    Ursache: die Funktion "SharePoint:SPTreeView" hat die Eigenschaft "SelectedNodePath". Hier muss der vollständige Seitenpfad hinterlegt sein. Erst dann kann der Tree aufgebaut werden. Begonnen wird der Tree immer an der Root. D.h. ich sehe alle "Pfad-Seiten" bis zu der Seite, auf der ich mich gerade befinde (sonst könnte ich ja nicht zurück navigieren).
    Fehler: ist der Eigenschaft "SelectedNodePath" ein Inhalt mit Aufbau "seite/unterseite/unterseite" zugewiesen, dann stürzt die Seite ab. Wird der Inhalt "seite/unterseite" zugeordnet, dann funktioniert es. D.h, muss der Tree beim Umschalten über "Websiteaktionen" --> "Seite bearbeiten" mehr als 2 Ebenen darstellen, fliegt mir die Seite mit obig beschriebener Meldung um die Ohren.

    Kann mir jemand dieses Verhalten erklären bzw. hat jemand so eine Navigation bereits gebaut?

    Danke schon mal!
    Gruß,
    Erzengel06

    Vollständige Fehlermeldung:
    [NullReferenceException: Object reference not set to an instance of an object.]
       Microsoft.SharePoint.WebControls.SPTreeView.CreatePathCacheInDataSource() +37
       Microsoft.SharePoint.WebControls.SPTreeView.ExpandToCurrentNode() +529
       Microsoft.SharePoint.WebControls.SPTreeView.OnPreRender(EventArgs e) +101
       System.Web.UI.Control.PreRenderRecursiveInternal() +107
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Control.PreRenderRecursiveInternal() +223
       System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3393

    Freitag, 27. Mai 2011 06:21