Wie kann ich die gesamte TreeView in Silverlight erweitern?
EDIT: Hier ist der XAML:
%Vor%Vielleicht führt die Verwendung von ItemTemplate dazu, dass der ItemContainerGenerator.ContainerFromIndex für einen Index null zurückgibt?
Ich weiß, das ist ein bisschen spät, aber ich habe das gefunden, als ich nach einer Antwort gesucht habe, und habe herausgefunden, dass Sie in Silverlight 4 implizites Theming dazu verwenden können:
%Vor%In Silverlight 5 müssen Sie diesen Code hinzufügen, um dies zu erreichen.
%Vor% Sie müssen TreeView.ItemContainerGenerator
verwenden, um die TreeViewItem
Instanzen zu erhalten und IsExpanded
für diese Instanzen festzulegen. Dies ist etwas komplex, da die Erweiterung asynchron durchgeführt wird. Sie können Codebeispiele im Internet finden oder einfach diese Erweiterungsmethode verwenden:
yourtreeview.ExpandAll ()
BEARBEITEN : Martin hat angegeben, dass die ExpandAll () -Methode für TreeView nicht existiert, aber ich habe gerade den folgenden Code in mein Silverlight-Projekt eingegeben und intellisense abgeholt:
%Vor%Sie können auch das TreeView-Attribut IsExpanded="true" im XAML setzen, obwohl ich nicht sicher bin, ob das den gesamten Baum oder nur eine Ebene erweitert
Ich sehe nicht, dass die Frage beantwortet wird, da das TreeViewItem immer NULL ist:
%Vor%Rufen Sie UpdateLayout () in der TreeView auf, bevor Sie versuchen, das TreeViewItem abzurufen. Das sollte helfen!
Tags und Links silverlight treeview