如何在应用程序页面中使用SharePoint Field

时间:2014-02-21 18:09:00

标签: sharepoint sharepoint-2013

我正在创建应用程序页面。在此应用程序页面上,我想更新列表中的某些SharePoint字段。

所以我在aspx文件中创建了这个:

<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">


    <SharePoint:TextField ControlMode="Edit" runat="server" FieldName="Size" ID="SizeField"></SharePoint:TextField>
</asp:Content>

在cs Page_Load中我有这个

protected void Page_Load(object sender, EventArgs e)
        {

            SPList list = SPContext.Current.Web.Lists["Media Content"];
            SizeField.ListId = list.ID;
            SizeField.ItemId = 5;
}

但是当我加载页面时,我得到了错误。

但是当我向aspx添加这个(直接在aspx中的ListId和ItemId)

<asp:Content ID="Main" ContentPlaceHolderID="PlaceHolderMain" runat="server">


    <SharePoint:TextField ControlMode="Edit" runat="server" FieldName="Size" ID="SizeField" ListId="7a00ae8c-9e8d-4762-81a2-a21b76a24ea7" ItemId="5"></SharePoint:TextField>
</asp:Content>

并且cs中的页面加载为空它没有任何问题....

但我想在cs代码中动态更改ItemId和ListId ......嗯......谢谢

PS:我也尝试在OnInit或CreateChildControls中添加初始化,但没有成功。感谢

1 个答案:

答案 0 :(得分:1)

首先,我认为您应该检查splist对象是否不返回null。 然后,您可以创建对象并将其写入UI。也许使用带有aspx和cs控件的混合解决方案是不行的。