以前にこれを行ったことがあるとほぼ確信していますが、どこにも見つかりません...
ajax TabContainer に 3 つのタブがあり、外側に 2 つの CheckBox があります。両方の CheckBox がオフになっていない限り、3 つのタブはすべて表示されます。この場合、3 番目のタブは非表示になります。
チェックボックスの値が変更されたときにJavaScriptで表示/非表示にできます
$find('<%=OptionsTabs.ClientID%>').get_tabs()[2]._hide();
$find('<%=OptionsTabs.ClientID%>').get_tabs()[2]._show();
しかし、PageLoad では、C# で動作させることができません。表示と可視性を設定しようとしましたが、どちらもタブを隠しませんでした。唯一機能したのは Visible=false を設定することでしたが、そうするとタブがまったくレンダリングされず、javascript で後で表示できなくなります。
編集: PageLoad に同じスクリプトを登録しようとしましたが、まだ機能しません
string script = "<script type=text/javascript> $find('<%=OptionsTabs.ClientID%>').get_tabs()[2]._hide(); </script>";
ClientScriptManager cs = Page.ClientScript;
String csname1 = "TabScript";
Type cstype = this.GetType();
cs.RegisterStartupScript(cstype, csname1, script);
ここでは OptionsTabs は null です。
サーバー側で取得した ClientID を送信してみました。タブコンテナ名の代わりにタブ名を送信してみました。タブとタブヘッダーの表示/可視性を設定してみました。何も機能しませんでした。