C# 更新面板中的Sharepoint人员编辑器-无法在部分回发后设置值

C# 更新面板中的Sharepoint人员编辑器-无法在部分回发后设置值,c#,asp.net,asp.net-ajax,C#,Asp.net,Asp.net Ajax,尝试使用更新面板在人员选择器中设置默认值。在没有更新面板的测试页面上,代码 PeopleEditor1.CommaSeparatedAccounts = "domain\\user.account"; 很好用。一旦我在人物编辑器周围添加了一个更新面板,选择器的文本区域就会被清除,并且以后对上述代码段的调用将被忽略。通过将以下内容放在新的aspx页面上,并在后面添加代码,可以复制此内容 code-behind: protected override void OnLoad(EventArgs

尝试使用更新面板在人员选择器中设置默认值。在没有更新面板的测试页面上,代码

PeopleEditor1.CommaSeparatedAccounts = "domain\\user.account";
很好用。一旦我在人物编辑器周围添加了一个更新面板,选择器的文本区域就会被清除,并且以后对上述代码段的调用将被忽略。通过将以下内容放在新的aspx页面上,并在后面添加代码,可以复制此内容

code-behind:

protected override void OnLoad(EventArgs e)
{
    base.OnLoad(e);
    PeopleEditor1.CommaSeparatedAccounts = "domain\\user.account";
}

aspx source:

<asp:ScriptManager runat="server" id="ScriptMan">
</asp:ScriptManager>
<asp:CheckBox runat="server" ID="causepostback" AutoPostBack="true" Text="Should this be checked?" />
<asp:UpdatePanel runat="server" ID="candypanel" UpdateMode="Conditional">
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="causepostback" />
    </Triggers>
    <ContentTemplate>
        <SharePoint:PeopleEditor runat="server" ID="PeopleEditor1" MultiSelect="true" 
                AllowEmpty="false" SelectionSet="User,SecGroup,SPGroup" AutoPostBack="false" 
                BorderWidth="1" Width="265px" PlaceButtonsUnderEntityEditor="false" Rows="1" />        
    </ContentTemplate>
</asp:UpdatePanel>
代码隐藏:
受保护的覆盖无效加载(事件参数e)
{
基础荷载(e);
PeopleEditor1.CommaSeparatedAccounts=“域\\用户.account”;
}
aspx来源:

非常感谢您的见解。

由于PeoplePicker在内部使用自己的Ajax请求进行自我更新,我们遇到了这个问题。我发现下面两个例子可以解决这个问题