Hide Actual Tab

I am trying to hide a tab and everything that is on it. So far, only the stuff on the tab is hiding and it is leaving the actual tab…


Sales is the name of the tab.

Sales.Visible = false;

I use for a child tab something like this:

// In _Load
revPanel.baseDockManager.PaneFromKey("DataTagPanel").Close();

// Helper Method
private Erp.UI.App.PartTracker.Panels.PartRev.PartRevPanel revPanel {
	get {
		return (Erp.UI.App.PartTracker.Panels.PartRev.PartRevPanel)csm.GetNativeControlReference("9d473ae1-1718-41ac-9643-c4828a09a0a2");
	}
}
1 Like

If it is the right name, maybe hide it’s container.? Maybe you hid the wrong panel from the left side list of panels?

Can you hide /unhide not via code but by selecting it and change the visible property?

Pierre

image

I changed it to this and it is still not hiding the actual tab:

			Ice.Lib.Framework.EpiDockManagerPanel SalesPersonPanel = (Ice.Lib.Framework.EpiDockManagerPanel)csm.GetNativeControlReference("501d683b-5674-4366-82f6-4d47dd91fe5f");
			SalesPersonPanel.Visible = false;

Right, I use .Close() not Visible

When I change it to this:

			SalesPersonPanel.Close();

I get this error:  Error: CS1061 - line 5271 (15557) - 'Ice.Lib.Framework.EpiDockManagerPanel' does not contain a definition for 'Close' and no extension method 'Close' accepting a first argument of type 'Ice.Lib.Framework.EpiDockManagerPanel' could be found (are you missing a using directive or an assembly reference?)

I’m not sure if it’s recommended or not but I have gone into Customization Maintenance and opened “Show Custom data”. If I try to set a property and it isn’t sticking sometimes it shows here and I can change the value. I had a tab I could not make visible after hiding it and I was able to fix it here.

I am reviving this topic to add some additional info. On a customization I was working on, I could not grab the PaneFromKey - eventhough I had the key (had to find via decompiling) it would not work.

I found that PanelFromControl worked like a champ when I passed the relevant control, which was easily viewable in the Customization Tree.

How did you use PanelFromControl @Chris_Conn is this a method on a control?

No, it’s still on the DockMgr

revPanel.baseDockManager.PaneFromControl(myControlOnSomePanel).Close();

1 Like

Copy, thank you

This is great, but is there a way to dynamically hide and show a panel? Would you have to recreate it if you want to see it again after Close()?

Yes, you just call .Show().

1 Like

Thanks. I guess whoever implemented this didn’t consider that Open is the opposite of Close and Show is the opposite of Hide. Not a problem once you know.