【问题标题】:C# filter does not restores after grid datasourse update网格数据源更新后 C# 过滤器未恢复
【发布时间】:2012-08-17 08:51:00
【问题描述】:

我的代码中有一部分:

                        if (OnSave())
                    {
                        saveFilter();
                        ReInitDataSource();
                        loadFilter();
                    }

保存过滤功能:

        ViewFilter filter = new ViewFilter();
    private void saveFilter()
    {
        foreach (object filt in GetGridView.ActiveFilter)
        {
            filter.Add((ViewColumnFilterInfo)filt);
        }
        GetGridView.ActiveFilter.Clear();
    }

加载过滤功能:

        private void loadFilter()
    {
        GetGridView.ActiveFilter.BeginUpdate();
        GetGridView.ActiveFilter.Clear();
        foreach (object filt in filter)
        {
            GetGridView.ActiveFilter.Add((ViewColumnFilterInfo)filt);
        }
        GetGridView.ActiveFilter.EndUpdate();
    }

ReInitDataSource() 确实提交对数据库的更改并升级 XpoObject 列产品:

                    GridColumn cColProductGroup = cColInfo.ColumnByFieldName(EVNT_BugzillaComponent.Fields.fkProductGroup_this.PropertyName);
                ControlsUtils.InitLookupControlData(cSession, typeof(LIC_ProductGroup), cColProductGroup.ColumnEdit as RepositoryItemLookUpEdit);

所以我的问题是: 当我恢复布局时,gridView1.FilterPanelText 变为“[product]=” 我不知道为什么?有人可以提出任何解决方案。

附:如果我不是按 XpOobjects 过滤,而是按字符串过滤 - 没有任何变化。

【问题讨论】:

    标签: c# gridview filter


    【解决方案1】:

    您是否尝试过使用数据块来更轻松地识别过滤器?!

    这样您就可以定义要初始化的数据块。

    http://www.centerspace.net/doc/NMath/user/data-2.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-26
      • 2011-03-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多