回发后刷新更新面板中的内容

时间:2017-02-24 15:09:06

标签: c# asp.net ajax vb.net updatepanel

我有一个简单的命令事件,可以切换两个按钮的可见性。

当控件包装在如下所示的更新面板中时,即使代码按预期执行,每次后续单击也不会切换按钮的可见性。

测试

  • 删除更新面板时代码按预期工作。
  • 点击按钮后,刷新页面会反映所做的更改。
  • 问题显然在于回发后刷新内容。
  • 我尝试了upd.updateupdateMode="always"

ASPX

<asp:UpdatePanel ID="upd" runat="server" UpdateMode="Conditional">
  <ContentTemplate>
    <asp:Repeater ID="rpt" runat="Server">
      <ItemTemplate>
        <asp:Button ID="btnOn" runat="Server" Text="ON" CommandName="ON" CommandArgument='<%#: Container.ItemIndex%>' UseSubmitBehavior="false" />
        <asp:Button ID="btnOff" runat="Server" Text="OFF" CommandName="OFF" CommandArgument='<%#: Container.ItemIndex%>' UseSubmitBehavior="false" />
      </ItemTemplate>
    </asp:Repeater>
  </ContentTemplate>
</asp:UpdatePanel>

VB.NET

Protected Sub Page_PreRenderComplete(sender As Object, e As EventArgs) Handles Me.PreRenderComplete
  For Each item In rpt.Items
    'Do a check and set output'
    btnOn.Visible = Not Output
    btnOff.Visible = Output
  Next
End Sub

0 个答案:

没有答案