我正在开发用于将项目添加到 sharepoint 2010 自定义列表的自定义表单。在我的 add.aspx 网站上,我使用以下 Web 控件:
<SharePoint:UserField runat="server" ID="Workers" ControlMode="New" FieldName="Workers"/>
<SharePoint:PeopleEditor runat="server" ID="Managers" ControlMode="New" FieldName="Managers"/>
如您所见,它们连接到列表中的特定字段:
<Field ID="{1EE0732A-FDD7-4128-A112-BE136DB948D9}" Name="Workers" DisplayName="Workers" Type="UserMulti" Required="TRUE" Mult="TRUE"/>
<Field ID="{1A499D66-B23B-40E4-8306-AF40F9081729}" Name="Managers" DisplayName="Managers" Type="UserMulti" Required="TRUE" Mult="TRUE"/>
问题是,在我填写表格并单击保存按钮后,新项目出现在列表中,但只是填写了工人字段。为什么它对 PeopleEditor 控件 (microsoft.sharepoint.webcontrols.peopleeditor) 不起作用?我真的很想让这个工作,因为它有 Accounts 集合,其中包含所有域 \ uid 的用户,这些用户放在这个控件中。如何使其工作或如何从 Microsoft.SharePoint.WebControls.PeopleEditor 获取此类集合?我需要以某种方式获取这些值以对“保存”单击事件执行服务器端验证。
顺便提一句。是否有网络控件用于每种字段类型的信息?即:
SharePoint:RadioButtonChoiceField - 选择
SharePoint:TextField - 文本
SharePoint:BooleanField - 布尔值