2011-09-07 5 views
0

사용자가 좋아하는 Youtube 비디오에 링크를 추가하고 저장할 수있는 UI를 만들고 있습니다. 브라우저의 즐겨 찾기 폴더와 매우 유사하지만 Youtube 비디오에만 해당됩니다. 그들이 등을 카테고리 및 하위 폴더로 카탈로그 할 수 있도록XML과 Treeview를 사용한 계층 적 데이터

나는, 트 리뷰에 표시되는 링크를 원하는 정렬의이 같은 :

나는 순간에 가장 어려움을 겪고있어 무엇
Videos 
|---Music Videos 
     |---Music video 01 
     |---Music video 02 
     |---Music video 03 
|---TV Shows 
     |---TV show 01 
     |---TV show 01 

는 UI가 닫힌 후 사용자가이 데이터를 저장할 수있는 방법을 연구하고 있습니다. 나는 XML 바인딩을 조사 해왔다.하지만 트리 뷰와 함께 제대로 작동하는 괜찮은 XML 스키마를 만들 수 없다.

또한 URL을 비디오 이름과 함께 저장하는 방법과 트리 뷰에 이름 만 표시하는 방법은 무엇입니까?

나는 이것에 관해 가장 좋은 방법으로 모든 포인터에 대해 매우 감사 할 것입니다. 더 좋은 방법이 있습니까? 모두 매우 혼란 스럽습니다.

대단히 감사합니다.

답변

1

좋은 데이터 아키텍처는 단순한 문제는 아니지만 단지 내 생각을 제공 할 수는 있지만 모두 좋은 아이디어라는 것을 보장 할 수는 없습니다.

처음에는 XML 데이터로 직접 작업하지 않는 것이 좋습니다. 더 복잡한 작업을 수행하면 매우 불편할 수 있습니다.

데이터를 XML로 직렬화 할 수 있지만 그 제한 사항과 부작용을 인식하고 있어야합니다. 다양한 직렬화 방법을 비교하려고하는 여기에있는 질문이 있습니다. 다른 형식으로 된 것이 더 적합 할 수 있습니다. XML의 두 가지 측면, 예를 들어 아주 분명하다 :

  • 큰 파일 크기의 오버 헤드로 인해 태그 & 및 텍스트 기반의 데이터 바이너리 직렬화 달리
  • 데이터가 더 많거나 적은 사람이 읽을 수와 투명에

어쨌든 데이터베이스 또는 일반 개체 모델을 사용하고 저장 용으로 직렬화/역 직렬화합니다.

당신이 composite pattern을 사용할 수 있습니다 하위 범주를 허용하려면

, 당신은 객체 VideoCategory, 두 인터페이스 Category 예를 들어 유형 ObservableCollection<IVideoComposite>의 속성 Children을 가지고 IVideoComposite를 구현을 가질 수 있습니다.

그런 다음 TreeView에 항목을 만들 때 암시 적으로 형식화 된 데이터 템플릿 (HierarchicalDataTemplateCategory)을 사용할 수 있습니다. Category 중 하나 인 경우 ItemsSourceChildren에 바인딩합니다.

+0

답장을 보내 주셔서 감사합니다. 네가 맞다, 내가 XML을 가지고 아무 것도 얻지 못했기 때문에. 나는 현재 내가 원하는 것에 더 많은 음식을 제공하는 것으로 보이는 SQLite를 조사하고있다. 상당한 정보 또는 자습서가 없습니다. 나는 책을 사야 할지도 모른다. 어쨌든, 당신의 생각에 감사드립니다. – user924014

관련 문제