我有一个UpdatePanel内部的面板控制。当我设置Panel.Enabled = false;回发时,面板内的所有控件都被禁用。但是,当我调用Panel.Visible = false;在回发时,面板仍然显示。Panel.Enabled在UpdatePanel中工作。 Panel.Visible不
此代码预期:
protected void rdoPayment_CheckedChanged(object sender, EventArgs e)
{
pnlBillingAddress.Enabled = rdoCreditCard.Checked;
upBillingAddress.Update();
}
如果我的代码更改为这一点,当它被设置为false面板仍清晰可见:
protected void rdoPayment_CheckedChanged(object sender, EventArgs e)
{
pnlBillingAddress.Visible = rdoCreditCard.Checked;
upBillingAddress.Update();
}
而且,如果我更改代码像这样,当启用设置为假时,控件不再被禁用并且面板仍然可见:
protected void rdoPayment_CheckedChanged(object sender, EventArgs e)
{
pnlBillingAddress.Enabled = rdoCreditCard.Checked;
pnlBillingAddress.Visible = rdoCreditCard.Checked;
upBillingAddress.Update();
}
任何人都知道这里发生了什么?
ps。我可以发布代码的aspx部分,但它很长,所以我只会在绝对需要时发布它。
这是不完全的问题,但它使我吧,这样的感谢! 一旦ASPX的仔细检查,我意识到小组是在实际包装的UpdatePanel,而不是反之亦然。我把面板放在里面,一切都很好。 再次感谢! –
2009-09-15 21:26:54
太棒了!我相应地更新了我的帖子。我知道可见性问题并不总是适用于其他控制,但听起来像是一种可能性。测试帮助。 – 2009-09-15 22:06:35