3

我需要修改过滤器在 Silverlight Pivot 查看器中的作用方式。

我有这个过滤器:

关键字:
x 关键字 a
_ 关键字 b
x 关键字 c
_ 关键字 d
_ 关键字 e

过滤器生成“关键字 a 或关键字 c”。我需要的是“关键字 a AND 关键字 c”。

那可能吗?

任何帮助表示赞赏!

4

2 回答 2

2

Poker Villain 说的很对,但这并不意味着这PivotViewer不是你的解决方案。我一直在研究的系统遇到了类似的问题,并设法找到了一种使PivotViewer游戏变得更好的合适方法。这仅适用于 JIT 集合,因为它依赖于重新获取数据。

从本质上讲,我一直在研究的系统是一个案例管理系统。与案例相关的大部分数据是互斥的,因此适合模型,PivotViewer但也可以将“标签”添加到案例中,就像您建议的那样,用户通常会希望在那里进行组合逻辑。这是我为解决问题所做的。

首先,..你会想要一份Silverlight Spy的副本。现在在 SSpy 的资源管理器选项卡中,您可以直接向下钻取 Visual Tree 并查看PivotViewer. 这是我的样子...

替代文字

你可以看到我已经深入到名为“PART_FacetPane”的控件中。下面有一堆CustomAccordianItems。本质上,您只需要子类化 PivotViewer(这就是我说 PivotViewerEx 的原因)并覆盖该OnApplyTemplate方法。

在这里,您将能够使用GetTemplateChild或其他方式来导航 VisualTree 并自己添加另一个控件。在我的项目中,我使用了之前构建的一个简单的标签云控件。

我所做的是处理标签云控件的事件并将查询字符串值附加到用于构建 CXML 并根据这些参数过滤数据的 URL。它不像能够“实时”过滤数据那样流畅,但它是目前的解决方案。

可能值得一提的是,根据您的具体情况,您可能需要将最终随机生成的查询字符串值添加到 CXML URL,这样您就不会获得数据的缓存副本。

HTH,Stimul8d。

于 2010-12-14T10:07:25.210 回答
0

底线......不。你得到你得到的这个控件。(目前)

但是您可以生成一个“虚拟”方面,它是一个项目的所有关键字的串联。但是如果你有多个关键字,它看起来会很丑。

于 2010-12-06T16:16:30.943 回答