日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SharePoint 2007/2010 的SPGridView 控件常见的两个问题

發(fā)布時間:2025/3/21 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SharePoint 2007/2010 的SPGridView 控件常见的两个问题 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

問題一:無法顯示分頁的頁碼。

很多朋友很奇怪明明已經設置如下的代碼

oGrid.AllowPaging = true;
oGrid.PageSize = 2;
oGrid.PageIndexChanging +=new GridViewPageEventHandler(oGrid_PageIndexChanging);

但是頁面上無法顯示頁碼。

這個是SharePoint 自己的問題,我們需要加入下面一行代碼

Controls.Add(oGrid);
oGrid.PagerTemplate = null;//這行就是要加的代碼,順序很重要,一定要在Controls.Add之后,DataBind();之前
oGrid.DataBind();

?

現(xiàn)在再試試,是不是就可以看見頁碼了^_^

?

?

問題二:啟用了過濾后,在翻頁以后,發(fā)現(xiàn)在選擇下一頁,SPGridView會加載所有的數據,而不是filter過濾的數據。過濾功能失效了。

?

因為在render 下一頁后,無法繼續(xù)保存filter .所以這里有這樣一個辦法大家可以試試:

首先在OnPreRender里插入下面代碼保存FilterExpression 到ViewState中,(記得確保代碼里Enable ViewState)

protected override void OnPreRender(EventArgs e) {

ViewState["FilterExpression"] = odsDataSource.FilterExpression;

base.OnPreRender(e);

}

然后

在您的Controls.Add(odsDataSource); 之前插入下面的代碼,

HttpRequest req = HttpContext.Current.Request; if (req.Form["__CALLBACKID"] == null ||

req.Form["__CALLBACKPARAM"] == null ||

!req.Form["__CALLBACKID"].EndsWith("ExampleGrid"))

{

if (ViewState["FilterExpression"] != null)

odsDataSource.FilterExpression = (string)ViewState["FilterExpression"];

}

轉載于:https://www.cnblogs.com/KingStar/archive/2010/12/17/1909030.html

總結

以上是生活随笔為你收集整理的SharePoint 2007/2010 的SPGridView 控件常见的两个问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。