当我使子选项卡可见 = false 时,TabContainer 变得不可见

TabContainer goes Invisible when I make child tab visible = false

我已经为此苦苦挣扎了一天。没有找到任何其他人与我的确切情况,所以我想我会 post 并回答对我有用的东西。

环境:Asp.net 4.0 - AjaxControlToolkit v.7.1213.0

问题:我有一个带有 3 个选项卡的 TabContainer,根据数据库值,我会让第二个选项卡不可见或不可见。我的问题是,当我使第二个选项卡不可见时,它会使整个 tabContainer 不可见。当我检查源代码时,我可以看到控件呈现在页面上(在 Firefox 和 Chrome 中测试),但现在有一个样式标签(可见性:隐藏)来自不在我的代码中的某个地方(母版页) 、子页面、style.css、c# 代码隐藏文件等),据我所知。我还没有找到这个错误样式标签的解释。我不是 ASP.net 大师,所以我的代码可能有些特殊性,但这也可能是 AjaxControltoolkit 的错误。

我会用目前对我有用的解决方法来回答这个问题。

解决方法:

因为我只需要对我的用户删除/隐藏它,所以我可以使用 Tabcontainer.Remove 方法。使用此方法时,当我的 tabContainer 包含不可见选项卡时,它在回发后不再消失。

我替换了:

if(x.value == true)

tabpanel1.Visible == 假;

与:

if(x.value == true)

tabContainer1.Tabs.Remove(tabpanel1);