2013-04-08 1 views
2

필자는 PivotViewer 컨트롤을 확장하고 필터 패널을 숨겼습니다. 카테고리가있는 TreeView가 있습니다. 각 카테고리에는 하위 항목이 있습니다. treeView에서 범주를 선택하거나 클릭하면 PivotViewer에 대한 필터를 설정하고 싶습니다. TreeView_MouseLeftButtonUp, 나는 다음과 같은Silvetlight 5 : PivotViewer : 코드에서 PivotViewer 필터를 변경하는 방법 S

private void myTreeView_MouseLeftButtonUp_1(object sender, MouseButtonEventArgs e) 
{ 
var grouping = (IGrouping<string, Web.SDKSampleCode>)myTreeView.SelectedItem; 
pViewer.Filter = string.Format("Category = EQ.{0}", grouping.Key.ToString()); 
} 

내가 FilterChanged 해고되어 보는가하고있는 중이 야,하지만 두 가지 문제가 있습니다 : 가) FilterChanged 두 번 해고되고 b)는 필터 중 하나를 적용하지됩니다.

모두가 FilterPanel과 작동하지만 응용 프로그램에서 FilterPanel을 숨기고 대신 TreeView를 사용하여 필터링 범주뿐만 아니라 TOC 역할을 할 수 있습니다.

도움을 주시면 감사하겠습니다. SideNote, 데이터를 가져 와서 PivotViewer에 표시하기 위해 SL5 + Ria 서비스를 사용하고 있습니다.

답변

0

발견! SetViewerState (필터 스트링)를 호출해야했습니다.

pViewer.Filter = string.Format("facet=Category&Category=EQ.{0}", grouping.Key.ToString()); 
       pViewer.SetViewerState(pViewer.Filter); 
관련 문제