这是我遇到的问题。我的表单上有5个按钮,它们彼此相邻(水平)。 5个按钮中的3个必须放在更新面板b / c这些按钮必须做AsyncPostBack,其他2个按钮需要在外面做回发。一切都按照我希望接受所有按钮不出现在同一条线上的方式工作。考虑到这些按钮的不同功能,我能做些什么让这5个按钮出现在同一条线上?
答案 0 :(得分:1)
UpdatePanel呈现<div>
您需要设置此div
的样式,以便它显示inline
请注意以下代码中的Style="display:inline"
。根据您的布局,还有其他方法可以实现这一目标,但这是最直接的。
<asp:UpdatePanel ID="UpdatePanel1" runat="server" Style="display:inline">
<ContentTemplate>
<asp:Label ID="labelText" runat="server" Text="Label" />
<asp:Button ID="Button1" runat="server" Text="Button1" />
<asp:Button ID="Button2" runat="server" Text="Button2" />
<asp:Button ID="Button3" runat="server" Text="Button3" />
</ContentTemplate>
</asp:UpdatePanel>
<asp:Button ID="Button4" runat="server" Text="Button4" />
<asp:Button ID="Button5" runat="server" Text="Button5" />
答案 1 :(得分:0)
您无需在内部使用按钮使UpdatePanel正常工作。您只需将它们定义为AsyncPostBackTriggers即可。您不必担心会破坏您的布局。
<div class="toolbar">
<asp:Button ID="Button1" runat="server" Text="Button1" />
<asp:Button ID="Button2" runat="server" Text="Button2" />
<asp:Button ID="Button3" runat="server" Text="Button3" />
</div>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Label ID="labelText" runat="server" Text="Label" />
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="Button1" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="Button2" EventName="Click" />
<asp:AsyncPostBackTrigger ControlID="Button3" EventName="Click" />
</Triggers>
</asp:UpdatePanel>