天天看點

利用sharepoint中的的SPgridview展現資料

利用sharepoint中的的SPgridview展現資料,實作一個類似于sharepoint本身list頁的功能

using System;

using System.Data;

using System.Configuration;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

using Microsoft.SharePoint;

using Microsoft.SharePoint.WebControls;

namespace SPGridViewDemo

{

public partial class WebForm2 : System.Web.UI.Page

{

protected void Page_Load(object sender, EventArgs e)

{

SPDataSource odsDataSource = new SPDataSource();

odsDataSource.ID = "ExampleSource";

Controls.Add(odsDataSource);

SPSite site = new SPSite("http://bobo-pc");

SPList list = site.RootWeb.GetListFromUrl("http://bobo-pc/Lists/test/AllItems.aspx");

odsDataSource.List = list;

//odsDataSource.FilterExpression

//Response.Write(SPGridView1.ID);

Response.Write(SPGridView1.FilterFieldName);

SPGridView1.FilteredDataSourcePropertyFormat = "{1}='{0}'";

SPGridView1.FilteredDataSourcePropertyName = "FilterExpression";

this.SPGridView1.AutoGenerateColumns = false;

SPGridView1.EnableViewState = false;

// this.SPGridView1.Sorting += new GridViewSortEventHandler(SPGridView1_Sorting);

//if (Page.IsPostBack) return;

// odsDataSource.FilterExpression = this.SPGridView1.FilterFieldName

//SPDataSource mySPDS = new SPDataSource();

//mySPDS.List = taskList;

//添加字段

SPBoundField col = new SPBoundField();

col.DataField = "标題";

col.SortExpression = "标題";

col.HeaderText = "标題";

SPGridView1.Columns.Add(col);

col = new SPBoundField();

col.DataField = "test";

col.SortExpression = "test";

col.HeaderText = "test";

SPGridView1.Columns.Add(col);

//col = new SPBoundField();

//col.DataField = "Rating";

//col.SortExpression = "Rating";

//col.HeaderText = "Rating";

//SPGridView1.Columns.Add(col);

SPGridView1.AllowSorting = true;

SPGridView1.AllowFiltering = true;

SPGridView1.FilterDataFields = ",标題";

//設定分組

SPGridView1.AllowGrouping = false;

SPGridView1.AllowGroupCollapse = true;

SPGridView1.GroupField = "test";

SPGridView1.GroupDescriptionField = "test";

SPGridView1.GroupFieldDisplayName = "分組:";

//添加下拉菜單字段

SPMenuField colMenu = new SPMenuField();

colMenu.HeaderText = "Presenter Name";

colMenu.TextFields = "标題";

//指定關聯的菜單ID

colMenu.MenuTemplateId = "PresenterListMenu";

//colMenu.NavigateUrlFields = "标題";

// colMenu.NavigateUrlFormat = "do.aspx?p={0}&q={1}";

//colMenu.TokenNameAndValueFields = "EDIT=Title,NAME=Rating";

//colMenu.SortExpression = "Title";

//菜單

MenuTemplate presenterListMenu = new MenuTemplate();

presenterListMenu.ID = "PresenterListMenu";

//菜單項

MenuItemTemplate biogMenu = new MenuItemTemplate(

"Read Biography", "/_layouts/images/EawfNewUser.gif");

//biogMenu.ClientOnClickNavigateUrl = "do.aspx?this=%EDIT%&that=%NAME%";

biogMenu.ClientOnClickScript = "alert('your javascript here')";

presenterListMenu.Controls.Add(biogMenu);

//菜單項

MenuItemTemplate broadcastMenu = new MenuItemTemplate(

"Recent Broadcasts", "/_layouts/images/ICWM.gif");

presenterListMenu.Controls.Add(broadcastMenu);

//分割線

MenuSeparatorTemplate sepMenu = new MenuSeparatorTemplate();

presenterListMenu.Controls.Add(sepMenu);

//菜單項

MenuItemTemplate favMenu = new MenuItemTemplate(

"Add to Favorites", "/_layouts/images/addtofavorites.gif");

presenterListMenu.Controls.Add(favMenu);

SubMenuTemplate aaa = new SubMenuTemplate();

aaa.Text = "aaa";

//aaa.Sequence = 400;

aaa.ImageUrl = "/_layouts/images/ICWM.gif";

MenuItemTemplate aaa_1 = new MenuItemTemplate("aaa_1", "/_layouts/images/ICWM.gif");

aaa.Controls.Add(aaa_1);

MenuItemTemplate aaa_2 = new MenuItemTemplate("aaa_2", "/_layouts/images/ICWM.gif");

aaa.Controls.Add(aaa_2);

presenterListMenu.Controls.Add(aaa);

this.Controls.Add(presenterListMenu);

SPGridView1.Columns.Add(colMenu);

//綁定資料源

this.SPGridView1.DataSourceID = "ExampleSource";

this.SPGridView1.DataBind();

}

public DataTable GetDataTable()

{

DataTable tblData = new DataTable();

tblData.Columns.Add("Title");

tblData.Columns.Add("Author");

tblData.Columns.Add("Rating");

tblData.Rows.Add("Obsession", "Robards, Karen", 2);

tblData.Rows.Add("Vanished", "Robards, Karen", 3);

tblData.Rows.Add("Magician: Apprentice", "Feist, Raymong E.", 4);

tblData.Rows.Add("Magician: Master", "Feist, Raymong E.", 5);

tblData.Rows.Add("Silverthorn", "Feist, Raymong E.", 4);

tblData.Rows.Add("Lord Foul's Bane", "Donaldson, Stephen R.", 3);

tblData.Rows.Add("The Illearth War", "Donaldson, Stephen R.", 4);

return tblData;

}

}

}

繼續閱讀