hai

hai

SharePoint SPGridView的使用3--多过滤条件的实现原理介绍

提到SPGridView,大家首先会想到在SharePoint站点中一个List下显示数据的列表。然而事实上那个列表并不是SharePoint SPGridView那是SharePoint的一个WebPart控件,这个WebPart的源码很复杂,我到现在也没看明白他是如何实现那些比SPGridView更复杂的功能,如排序,多过滤,排序图标和过滤图标的显示。然而有一点却是很明显的,它这些功能的实现都是通过修改页面的Url,通过Url的参数来控制的页面的数据的显示的。例如添加一个过滤条件,Urlhttp://127.0.0.1:9001/Shared%20Documents/Forms/AllItems.aspx变为http://127.0.0.1:9001/Shared%20Documents/Forms/AllItems.aspx?View={4BF66595-BB01-44D7-817E-E91736E7C21B}&FilterField1=Modified&FilterValue1=01%2F16%2F2009,同样排序,分页也是通过修改Url来实现。 这些Url的修改就是通过调用JavaScript函数来修改Url,在后台解析Url,并实现相应的功能。SPGridView的菜单栏并没有这些功能,那我们就只能创建一个继承SPGridView的类,并重写SPGridView的CreateChildControls(System.Collections.IEnumerable dataSource, bool dataBinding)方法。如何实现,之后介绍。

 

上图的url为:

http://127.0.0.1:9000/_admin/test.aspx?PageIndex=1&PageSize=5&SortField=PlanName&SortDir=ASC&FilterField1=PlanName&FilterValue1=test&FilterField2=Status&FilterValue2=Complete

posted on 2009-02-02 16:02  wanghai  阅读(728)  评论(0编辑  收藏  举报

导航