我有一個web列表,它可以在列表中工作,但我正在嘗試創建一個包含SharePoint列表列表的下拉列表,以便當用戶編輯該頁面並選擇「修改共享的webpart '他們可以選擇一個列表項並將其解析回web部件。SharePoint列表中的webpart組合框
任何例子或指向例子的鏈接表示讚賞!
感謝
丹
我有一個web列表,它可以在列表中工作,但我正在嘗試創建一個包含SharePoint列表列表的下拉列表,以便當用戶編輯該頁面並選擇「修改共享的webpart '他們可以選擇一個列表項並將其解析回web部件。SharePoint列表中的webpart組合框
任何例子或指向例子的鏈接表示讚賞!
感謝
丹
你在找什麼叫做Toolpart。看看this example的教程,瞭解如何創建一個。
總體而言,你的一般步驟是:
Microsoft.SharePoint.WebPartPages.ToolPart
CreateChildControls
,編寫代碼來遍歷在您的SPWeb的列表,添加這些到一個DropDownListGetToolParts
並添加自定義ToolPart,使其在右側顯示出來這聽起來像你想創建一個自定義的編輯器部分。在部分中,您將有一個顯示列表名稱的下拉列表(您可能想要過濾隱藏和空列表),並且當從列表中選擇某個項目時,第二個下拉列表將顯示所選項目的標題列名單。
下面是一些代碼(在此編輯的,所以它需要被清理),以幫助您開始:
protected Page_Load(...)
{
if (IsPostBack) return;
var web = SPContext.Current.Web;
var query = from list in web.Lists
where list.Hidden == false && list.ItemCount == 0
select list;
DropDownList1.DataSource = query;
DropDownList1.DataTextField = "Title";
DropDownList1.DataBind();
}
protected DropDownList1_SelectedIndexChanged(...)
{
var web = SPContext.Current.Web;
var listName = DropDownList1.Text;
var list = web.Lists[listName];
var table = list.Items.GetDataTable();
DropDownList2.DataSource = table;
DropDownList2.DataTextField = "Title";
DropDownList2.DataValueField = "ID";
DropDownList2.DataBind();
}
十分感謝這就是讓我去我去的路線和MSDN文章。 – ifunky 2010-05-20 08:28:58