.NET
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic to the Top
- Bookmark
- Subscribe
- Printer Friendly Page
Create a workspace from an existing workspace .NET
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Hi I'm trying to create / copy an existing workspace using c#
I couldn't find a direct way to just copy the existing workspace so I tried to add it's properties manually. The only trouble is I can't seem to cover all the settings here's what I have so far... any help would be much appreciated.
var userworkspace = new Workspace(cs, acadUser)
{
WorkspaceRibbonRoot = wsMaster.WorkspaceRibbonRoot,
WorkspaceQuickAccessToolbar = wsMaster.WorkspaceQuickAccessToolbar,
Name = acadUser
};
foreach (WorkspaceToolbar wst in wsMaster.WorkspaceToolbars)
{
userworkspace.WorkspaceToolbars.Add(wst);
}
foreach (WorkspacePopMenu wsp in wsMaster.WorkspacePopMenus)
{
userworkspace.WorkspacePopMenus.Add(wsp);
}
Pretty basic I know, how can I get PartialCUI tabs, palettes, etc.. applied?
Cheers
Solved! Go to Solution.
Re: Create a workspace from an existing workspace .NET
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Ok so I figured out how to create my new workspace from an existing workspace... pretty much what I had previously. The only trouble now is that the newly created workspace isn't full recognised i.e. I can't set it current unless I do it through the cui editor or restart CAD?
How do I properly update?
Thanks in advance, Matt
Re: Create a workspace from an existing workspace .NET
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
It is look like you have to unload/load cui(x)-file with help of Application.UnloadPartialMenu/Application.LoadPart
Re: Create a workspace from an existing workspace .NET
- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Highlight
- Email to a Friend
- Report Inappropriate Content
Thanks for the reply, unfortunately I needed to reload the main cui file not a partial cui. The following actually worked?
Application.LoadMainMenu(csMain.CUIFileName);
since there was no "UnloadMainMenu" I called the above code whilst the main cui was loaded which seemed to work? The only annoyance been the number of times the environment reloaded.
1st - on initial load
2nd - on "LoadMainMenu"
3rd - on "SetcurrentWorkspace"
Can you think of a better / alternative way other than sendstringcommand? Will this approach cause problems since the main cui was never unloaded.
If not I'll run with this, thanks



