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) で機能しないのはなぜですか? このコントロールに配置されたユーザーのすべてのドメイン \ uid を含む Accounts コレクションがあるため、これを機能させたいと思っています。それを機能させる方法、または Microsoft.SharePoint.WebControls.PeopleEditor からそのようなコレクションを取得する方法は? 「保存」クリックイベントでサーバー側の検証を実行するには、これらの値を何らかの形で取得する必要があります。
ところで。Web コントロールが各フィールド タイプに使用する情報はどこかにありますか? 例:
SharePoint:RadioButtonChoiceField - 選択肢
SharePoint:TextField - テキスト
SharePoint:BooleanField - ブール値