这是否可以使用infragistics winforms 15.2 .net framework 4.0?我注意到我能够通过ultragrid.displaylayout.band(i).columnfilters得到一个只读的columnFilterCollection对象,但是我也可以设置这个属性,这样我就可以应用我从getter得到的相同列过滤器了属性?或者,如果不可能,我可以禁止在数据源更改时重置过滤器吗?
经过进一步研究,我发现了两种可能有用的方法。我可以使用
吗?UltraGrid.DisplayLayout.Bands(0).ColumnFilters.CopyTo()
UltraGrid.DisplayLayout.Bands(0).ColumnFilters.CopyFrom()
要达到这个效果吗?最值得赞赏的是一个例子。
答案 0 :(得分:2)
Private Function CopyByValue(ByVal input As Object, ByRef target As Object)
Dim success As Boolean = True
target = input
Return success
End Function
Private _inventoryColumnFilters As Object = Nothing
CopyByValue(grdInventory.DisplayLayout.Bands(0).ColumnFilters,_inventoryColumnFilters)
grdInventory.DisplayLayout.Bands(0).ColumnFilters.CopyFrom(TryCast(_inventoryColumnFilters, Infragistics.Win.UltraWinGrid.ColumnFiltersCollection))
这很有效。让doesent的.CopyTo具有ColumnFilterCollection参数或复制构造函数的重载非常愚蠢。