Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# “问题”;“更新面板”;控制_C#_.net_Asp.net_Ajax - Fatal编程技术网

C# “问题”;“更新面板”;控制

C# “问题”;“更新面板”;控制,c#,.net,asp.net,ajax,C#,.net,Asp.net,Ajax,我正在使用ASP.NET,其中我正在使用Ajaxcontroltoolkit和“更新面板”控件来更新页面的一部分。 第一次运行程序时,它工作正常,但第二次“更新面板”控件不工作。我可以提供更多细节,知道问题出在哪里吗 <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <table border="1" id="tbRegis

我正在使用ASP.NET,其中我正在使用Ajaxcontroltoolkit和“更新面板”控件来更新页面的一部分。
第一次运行程序时,它工作正常,但第二次“更新面板”控件不工作。我可以提供更多细节,知道问题出在哪里吗

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                <table border="1" id="tbRegistration" style="font-family: Calibri" width="800px">
                    <tr>
                        <td style="width: 33%" align="center">
                            <asp:RadioButton ID="rbIndividual" runat="server" OnCheckedChanged="RadioButton_CheckedChanged"
                                Text="Individual" GroupName="Profile" AutoPostBack="true" />
                        </td>
                        <td style="width: 33%" align="center">
                            <asp:RadioButton ID="rbAgent" runat="server" OnCheckedChanged="RadioButton_CheckedChanged"
                                Text="Agent" GroupName="Profile" AutoPostBack="true" />
                        </td>
                        <td style="width: 33%" align="center">
                            <asp:RadioButton ID="rbBuilder" runat="server" OnCheckedChanged="RadioButton_CheckedChanged"
                                Text="Builder" GroupName="Profile" AutoPostBack="true" />
                        </td>
                    </tr>
                </table>
            </ContentTemplate>
        </asp:UpdatePanel>

我认为您必须以这种方式使用更新面板:

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">

 </asp:UpdatePanel>

我认为您必须以这种方式使用更新面板:

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">

 </asp:UpdatePanel>

如果UpdateMode无法解决您的问题,请尝试使用以下方法:

<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" ChildrenAsTriggers="false"  runat="server">

</asp:UpdatePanel>

由于ASP.NET Ajax UpdatePanel的酷之处在于,当内部引发通常会生成回发的事件时,它的内容会异步更新,因此人们会认为这是它的默认行为

但事实并非如此:UpdatePanel的UpdateMode属性有两个可能的值:

  • 总是
  • 有条件的
默认值始终为

当设置为“始终”时,UpdatePanel会在从页面中任何位置引发的每次回发中更新,因此会从面板内、其他面板内或页面上的控件进行更新

当设置为条件时,UpdatePanel将仅在面板内的控件或指定的触发器发起回发时更新


因此,如果您有多个更新面板,并且不希望每次都更新所有面板,则必须将UpdateMode设置为Conditional,如果UpdateMode无法解决问题,请尝试使用以下方法:

<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" ChildrenAsTriggers="false"  runat="server">

</asp:UpdatePanel>

由于ASP.NET Ajax UpdatePanel的酷之处在于,当内部引发通常会生成回发的事件时,它的内容会异步更新,因此人们会认为这是它的默认行为

但事实并非如此:UpdatePanel的UpdateMode属性有两个可能的值:

  • 总是
  • 有条件的
默认值始终为

当设置为“始终”时,UpdatePanel会在从页面中任何位置引发的每次回发中更新,因此会从面板内、其他面板内或页面上的控件进行更新

当设置为条件时,UpdatePanel将仅在面板内的控件或指定的触发器发起回发时更新


因此,如果您有多个更新面板,并且您不想每次都更新所有面板,那么您必须将UpdateMode设置为Conditional(有条件的)

您能解释一下为什么是Conditional(有条件的)而不是always(我阅读了MSND文档,但无法理解)我还没有使用UpdateMode,但是在使用它之后,我的问题没有得到解决。@Menahem看到了这一点:你能解释为什么“有条件”和“不总是”(我读了MSND文档,但无法理解)好吧,我还没有使用updatemode,但在使用它之后,我的问题没有得到解决。@Menahem看到了这一点:是的,我的意思是这样,我添加了代码片段,请检查。我不能接受那些不能解决我问题的答案。是的,我的意思是这样的,我添加了代码片段,请检查。我不能接受那些不能解决我问题的答案。