私ajaxToolKit:TabContainer
のウェブサイトに があります。3 つのタブがあり、それぞれ何らかのProduct
形で表示されます (説明、追加情報、レビュー)。他にも3 つのタブが動的に作成され、製品が特定の基準を満たした場合にタブ コンテナーに読み込まれます。ただし、これらの 3 つの動的タブを読み込むと、問題が発生します。
タブをロードすると、タブDescription
をクリックするまで、タブのテキストが他のすべてのタブに表示され、Description
その後、他のすべてのタブから消えます。
私が本当に気にしているすべてのブラウザ(Chrome、IE、FF)で発生します。html
ソースを表示すると、マークアップには正しいテキストが含まれていますがdiv
、tab panel
何らかの理由で正しく表示されていません。
コード ビハインドでコントロールをロードし、コンテナーに追加する方法は次のとおりです。
TabPanel overviewTab = new TabPanel();
ProductOverviewInfo control = (ProductOverviewInfo)Page.LoadControl("~/Controls/ProductOverviewInfo.ascx");
control.overview_populate();
overviewTab.Controls.Add(control);
overviewTab.HeaderText = "OVERVIEW";
ProductTabs.Controls.AddAt(firstVisibleTab, overviewTab);
firstVisibleTab
タブを挿入する場所を決定する int 値です。
今、私はこれに対する修正を見つけましたが、それは私が望んでいるものでも、私のプロジェクトスポンサーが望んでいるものでもありません. 使うだけならProductTabs.Control.Add(tab)
問題ないです。しかし、製品が概要タブ (上記のコード) を持つ基準を満たしている場合は、そのタブをアクティブにしたいと考えています。
.Add(tab)
では、 を使用してActiveTabIndex
、新しいタブを挿入した場所に を配置してみませんか。さて、私はそれを試してみましたが、何らかの理由でチェックを行う(または上記のコードに直接追加する)と、全体TabContainer
がまったく表示されませんでした。
したがって、私が使用している製品の約半分では、このテキストが間違ったタブに表示されるという問題があります。残りの半分では、概要タブ (または他の 2 つの動的に読み込まれるタブ) がないため、問題はありません。