我正在使用 ASPxperience 控件进行测试。我有一个简单的 CallbackPanel,里面有一个文本框和一个 PageControl。只是为了测试,我在回调面板下放置了一个按钮。单击时,我想向 PageControl 添加一个额外的选项卡。
标记:
<dx:ASPxCallbackPanel ID="ASPxCallbackPanel1" runat="server" Width="200px" OnCallback="ASPxCallbackPanel1_Callback1">
<PanelCollection>
<dx:PanelContent runat="server">
<dx:ASPxPageControl ID="ASPxPageControl1" runat="server" ActiveTabIndex="0" ClientInstanceName="PageControl1"
Height="359px" Width="538px">
<TabPages>
<dx:TabPage>
<ContentCollection>
<dx:ContentControl runat="server">
</dx:ContentControl>
</ContentCollection>
</dx:TabPage>
</TabPages>
</dx:ASPxPageControl>
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
</dx:PanelContent>
</PanelCollection>
</dx:ASPxCallbackPanel>
<input id="Button1" type="button" value="button" onclick="ASPxCallbackPanel1.PerformCallback('addtab');" />
代码隐藏
protected void ASPxCallbackPanel1_Callback1(object sender, DevExpress.Web.ASPxClasses.CallbackEventArgsBase e)
{
ASPxPageControl1.TabPages.Add("Test");
TextBox1.Text += "1";
}
现在奇怪的是,每次单击按钮时,在文本框中总是会在文本框的内容中添加“1”。因此,如果您单击 5 次,它将显示:'11111'。但是,PageControl 总是删除(或忘记或忽略?)之前添加的选项卡,因此您总是只剩下一个名为“测试”的额外选项卡。
这是怎么来的?我不明白 ?(我对这个控制套件相当陌生)