1

.Net RIA 서비스의 July '09 CTP로 작업하고 Group => Department => Category 객체를 트리 뷰에 바인딩 한 다음 계층 구조 데이터를 렌더링합니다. 세 가지 객체 유형 각각.데이터 세트 새로 고침 후 TreeView 하위 트리 유지하기

내 최종 목표는 드래그 앤 드롭 기능을 사용하여 내 그룹 목록 => 부서 => 카테고리를 신속하게 편집하고 각 관계를 무엇보다 직관적으로 변경할 수있게하는 것입니다. 이전에 사용 가능했습니다.

현재 내 문제는 drop 명령을 실행하고 데이터 컨텍스트에 제출해야하는 변경 사항을 제출하면 트리 뷰가 다시 그려지고 나뭇잎이 접 힙니다. 제가 붕괴를 피하기 위해 사용할 수있는 방법이 있습니까?

답변

0

많은 Silverlight 작업을 수행하지는 못했지만 실제로는 제한된 개체 모델이 있으므로 일부 이벤트/속성/메서드는이 작업을 수행하지 못할 수 있습니다.

private expandeds as collection(); 

tree.OnNodeExpand() { 
    expandeds.add(tree.CurrentNode.key); 
} 

tree.OnNodeCollapse() { 
    expandeds.remove(tree.CurrentNode.key); 
} 

tree.AfterBind() { 
    for each key in expandeds { 
     tree.FindNodeByKey(key).expanded = true; 
    } 
} 
3

나는 순수하게 대답을 찾고이 스레드 우연히 사람들이 답변을 게시하도록하겠습니다 :하지만 당신은 국가 자신에게 ... 다음 의사 코드와 유사한 무언가를 복원/절약을 시도 할 수 있습니다. (SOURCELIST라는) 서비스

  • 한 표시 루트 항목을 포함하도록에서 (DisplayList가)를

    1. 하나가 수신 된 데이터를 포함하는 : 당신은이 목록을해야합니다

      (SL4에서 이루어졌다) 귀하의 treeView 바인딩됩니다.

    로드 작업의 LoadBehaviour가 병합으로 설정되어 있는지도 확인해야합니다. 예를 들어 :

    domainContext.Load(domainContext.GetEntityQuery(), LoadBehavior.MergeIntoCurrent, CallbackFunction, userState); 
    

    그래서 모든 지금 남아있는 웹 서비스에서 반환 개체의 새 목록으로 SOURCELIST 교체 각 업데이트 후에 당신의 CallbackFunction에 domainContext.Load를 호출하는 것입니다. 표시 목록의 드릴 다운 항목은 연결 및 계층 적 데이터 템플리트에 의존하기 때문에 방금 편집 한 항목에서 확장해야합니다.

    참고 처음부터 DisplayList를 다시 작성하면 트리 뷰가 분명히 다시 접히고 \ collapse됩니다.

    희망이 있으면 도움이됩니다. Jan

  • 관련 문제