如何从SPListTemplateCollection(SharePoint 2007)填充下拉列表控件(ASP.NET)?
SPWeb web = SPContext.Current.Web;
ddlTemplateList = new DropDownList();
ddlTemplateList.DataSource = web.ListTemplates;
ddlTemplateList.DataBind();
此代码无法正常运行...未显示列表模板的名称。
答案 0 :(得分:2)
您需要指定DataTextField and DataValueField
才能使其正常工作。
ddlTemplateList.DataSource = web.ListTemplates;
ddlTemplateList.DataTextField = "DisplayColumnName";
ddlTemplateList.DataValueField = "ValudColumnName";
ddlTemplateList.DataBind();
答案 1 :(得分:1)
使用DisplayMember和ValueMember属性!
<强>更新强>
DisplayMember和ValueMember是WinForm控件的属性。
对于asp.net正确的解决方案,正如Muhammad所说,是使用DataTextField和DataValueField。
答案 2 :(得分:1)
试试这个
List<SPWeb> lstSPWeb = web.ListTemplates
ddlTemplateList.DataSource = lstSPWeb;
ddlTemplateList.DataBind();
答案 3 :(得分:0)
foreach (SPListTemplate lt in SPContext.Current.Web.ListTemplates)
ddlTemplateList.Items.Add(new ListItem(lt.Name, lt.Type.ToString()));