我在第4个选项卡上有一个带有日历控件的tabpanel,但是当我选择日期时,回发会使tabpanel返回到第一个选项卡而不是第4个选项卡。 有没有办法让它返回到日历控件所在的选项卡而不是恢复到第一个选项卡?
我知道在TabContainer上将autoPostback设置为true会执行此操作,但这意味着它会在每个选项卡上重新加载而不仅仅是我想要的那个。
有什么想法吗?
答案 0 :(得分:0)
在UpdatePanel控件中包装第四个选项卡的内容应该可以解决问题。
<ajaxToolkit:TabPanel runat="server" ID="tabCS" HeaderText="Country Settings">
<ContentTemplate>
<asp:UpdatePanel runat="server" ID="upCountry" UpdateMode="Conditional">
<ContentTemplate>
... content and calendar
</ContentTemplate>
</asp:UpdatePanel>
</ContentTemplate>
</ajaxToolkit:TabPanel>
答案 1 :(得分:0)
这是我发现的最佳做法。
除非需要更新选项卡面板中的其他选项卡,否则只将每个面板的内容放在更新面板中。如果您需要更新其他面板,可以通过编程方式调用该方法来更新它们。
这有两个很好的理由: 1.)通过在选项卡中放置更新面板,您将从服务器返回更少的位。 2.)以编程方式调用更新方法可以让您更好地了解您为最终用户提供的内容,并且您不会忘记更新数据。
请记住,如果您使用多个面板将更新模式从始终更改为条件,以便仅在客户端上更新相关信息。
此外,如果您想将整个选项卡面板控件放入更新面板,您可能需要添加对CSS文件执行的任何格式化,因为我的经验是它无法保留默认格式,并且更新。
如果您需要更多信息或代码示例,请发邮件给我。
安德鲁