【问题标题】:Silvetlight 5 : PivotViewer: How to change PivotViewer Filter in code behind SSilvetlight 5:PivotViewer:如何在 S 后面的代码中更改 PivotViewer 过滤器
【发布时间】:2013-04-08 19:30:22
【问题描述】:

我扩展了 PivotViewer 控件并隐藏了过滤器面板。我有一个带有类别的 TreeView。每个类别下都有子项。当在 treeView 上选择/单击类别时,我想为 PivotViewer 设置过滤器。在 TreeView_MouseLeftButtonUp 中,我正在执行以下操作

 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 被触发,但有两个问题: a) FilterChanged 被触发两次并且 b) 也不应用过滤器。

这一切都适用于 FilterPanel ,但我必须在我的应用程序中隐藏 FilterPanel ,而是使用 TreeView 以便它可以充当 TOC 以及过滤类别。

非常感谢任何帮助。 旁注,我正在使用 SL5 + Ria 服务来获取数据并在 PivotViewer 中显示。

【问题讨论】:

    标签: pivotviewer


    【解决方案1】:

    找到了!我需要调用 SetViewerState(filterstring)

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多