Thanks, Daniil, further guidance would be appreciated. I've put together a little test case below to get started.
<%@ Page Language="C#" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<!DOCTYPE html>
<html>
<head id="Head1" runat="server">
<title>Ext.NET Examples</title>
<script>
var toggle = function (show) {
var activeTab = App.TabPanel1.getActiveTab();
for (var i = 0; i < activeTab.tools.length; i++) {
if (activeTab.tools[i].type == "close") {
// A tool instance doesn't have setVisible() defined so this doesn't work
//activeTab.tools[i].setVisible(false);
}
}
// Something along these lines used to work in v1.7 but not any longer
/*
if (show) {
Ext.get(activeTab.tab.getEl()).dom.className = Ext.String.format("{0}{1}", "x-tab-closable ", Ext.get(activeTab.tab.getEl()).dom.className);
}
else {
var className = Ext.get(activeTab.tab.getEl()).dom.className.replace(/x-tab-closable /g, "");
Ext.get(activeTab.tab.getEl()).dom.className = className;
}
*/
};
</script>
</head>
<body>
<form id="Form1" runat="server">
<ext:ResourceManager ID="ResourceManager1" runat="server" />
<ext:Viewport ID="Viewport1" runat="server" Layout="BorderLayout">
<Items>
<ext:Panel runat="server" Region="North" Layout="FormLayout" Height="120">
<Items>
<ext:Button runat="server" Text="Show">
<Listeners>
<Click Handler="toggle(true);"></Click>
</Listeners>
</ext:Button>
<ext:Button runat="server" Text="Hide">
<Listeners>
<Click Handler="toggle(false);"></Click>
</Listeners>
</ext:Button>
</Items>
</ext:Panel>
<ext:TabPanel ID="TabPanel1" runat="server" MinTabWidth="120" Region="Center">
<Items>
<ext:Panel ID="Panel1" runat="server" Icon="Book" Title="Ext.Net" Closable="true">
</ext:Panel>
<ext:Panel ID="Panel2" runat="server" Icon="Find" Title="Sencha" Closable="true">
</ext:Panel>
</Items>
</ext:TabPanel>
</Items>
</ext:Viewport>
</form>
</body>
</html>