2011-05-03 3 views
0

내 프로젝트에서 서버는 클라이언트에게 큰 (> = 50MB) xml 스트림을 보내고 클라이언트는 TreeView 컨트롤을 통해 XML을 표시합니다.TreeView의 NodeMouseClick 이벤트에서 부분 XML 스트림을 동적으로 선택하고로드하는 방법?

XMLDocument.LoadXml() 메서드는 큰 XML 스트림을로드하는 데 너무 많은 시간이 걸리므로 XML 내용을 동적으로로드하고 TreeView 노드를 클릭하고 싶습니다. 예를 들어

, 트 리뷰는 다음과 같은 경우 :

- Root 
- Folder1 
    - File1 
    - File2 
+ Folder2 
+ Folder3 

내가 Folder2 폴더 노드를 클릭

, 나는 XML 내용은로드와 오른쪽 패널에 ListView 컨트롤에 표시되는 Folder2 폴더에 해당하는 기대합니다. 모든 아이디어를 높이 평가합니다!

답변

0

폴더 이름을 찾으려면 XPathDocument (앞으로 읽기 전용)를 사용해야합니다. xpath 표현식을 사용할 수 있습니다.

var folder = doc.CreateNavigator().SelectSingleNode("/root/folder2"); 
var text = folder.ReadSubTree().ReadInnerXml(); 
관련 문제