2017-02-09 24 views
0

大きなTreeViewを検討してください。いくつかのノードとサブノードが展開され、他のノードとサブノードが展開されます。ユーザーは子ノードをノードに追加し、プログラムはすべてを元のXMLファイルに保存します。その後、TreeViewが再構築されます。問題は、ルートノードだけが展開されることです。他のノードはすべて折りたたまれています。C#でのTreeView状態の保存と復元

TreeView(ノードが展開されている)の状態を保存してから、保存後にこの状態に復元できるコードを見たことがありますか(WPFには何もありません) ?

アイデア?

編集

まあ、そのリンクは本当に助けにはなりませんでした。私は、配列を作成し、isExpandedの状態を格納し、負荷の後にそれを読み取ることを考えています。

+1

この投稿はあなたに役立ちますhttp://stackoverflow.com/questions/3989018/save-wpf-treeview-state-on-data-reload – live2

+0

ありがとう!それは助けになるはずです! – zetar

+0

リンクされたアプローチが役に立たなかった理由を説明しますか? – Ron

答えて

0

ツリービューの状態を直接管理し、ノードが展開または折りたたまれたときに注意する必要があります。その後、ロードまたはリフレッシュ時に、必要に応じてノードを開閉します。

+0

私は木を歩いてIsExpanded = trueであるかどうかを確認できます。 – zetar

+0

@zetar 'IsExpanded'プロパティを持つデータのクラス拡張またはカプセル化クラスを作成し、その変数を設定/使用します。 – OmegaMan

関連する問題