如何在加载GridFilterSettings后刷新FilterUIProvider?

时间:2013-12-02 14:19:16

标签: vb.net winforms infragistics ultragrid

在我们的软件中,可以保存网格设置,其中还包括 filtersettings

为了提供更好的过滤,我们使用Infragistics的 FilterUIProvider ,它显示了过滤标准,如下图所示(我道歉,它是德语):

figure 1: FilterUIProvider of Infragistics

但是,如果我尝试将数据库中的FilterSettings加载到网格中,则 FilterUIProvider的Checked Items不会更改(!)

这是我正在使用的代码片段(加载FilterSettings):

    For Each FilterSetting As GridFilter In CurrentVorlage.VorlageData.GridFilterSettings
        If Not FilterSetting.Key.Equals(.Key) Then Continue For
        Dim cond As New FilterCondition
        cond.CompareValue = FilterSetting.CompareValue 'value from database
        cond.ComparisionOperator = CType(FilterSetting.ComparisionOperator.FilterComparisionOperator) 'value from database
        e.Layout.Bands(0).ColumnFilters(.Key).FilterConditions.Add(cond)
        e.Layout.Bands(0).ColumnFilters(.Key).LogicalOperator = CType(FilterSetting.LogicalOperator, FilterLogicalOperator)
    Next

但网格中的行会按预期过滤掉。 唯一的问题是FilterUIProvider似乎对filtersettings的变化充耳不闻。 因此,如果用户再次单击过滤器,则取消选中所有项目。 如果用户检查过滤器上的其他内容,FilterSettings也会消失。

根据GridFilterSettings检查/取消选中项目我错过了什么?

我浏览了互联网,Infragistics帮助网站,但不幸的是我没找到任何东西,真的。 任何帮助将不胜感激。

编辑:我还在Infragistics Forum上发布了相同的问题,我提供了一个示例应用程序。

1 个答案:

答案 0 :(得分:0)

正如Mike Saltzman所指出的那样,我们必须将infragistics版本更新为 2010.3

  

你的样本对我来说很好。当我第一次运行样品时   时间,它提出了两个过滤器(空白)和36.当我下拉   过滤器UI,这些是列表中选中的两个项目。我试过了   更改已过滤的项目,然后单击“保存”按钮   停止并重新运行应用程序,再次,它正常工作。   我选择的项目仍然会被过滤,但仍会检查它们   我把它放下来的清单。

     

所以我的猜测是,这只是您正在使用的版本中的一个错误   并且您需要获得最新的服务版本

http://www.infragistics.com/community/forums/p/85525/427503.aspx#427503