WorkspaceManager.LoadWorkspace(String, Object, Boolean) Method
Loads a workspace from the target file and places this workspace in the WorkspaceManager.Workspaces collection under the specific name.
Namespace: DevExpress.Utils
Assembly: DevExpress.Utils.v24.1.dll
NuGet Packages: DevExpress.Utils, DevExpress.Wpf.Core
Declaration
Parameters
Name | Type | Description |
---|---|---|
name | String | A String value that is the name this workspace will have in the WorkspaceManager.Workspaces collection. |
path | Object | A String value that is the path to a local storage file, which contains the required workspace. |
getNameFromData | Boolean | true if the workspace name written in a file has a priority over the name parameter of this method; otherwise, false. |
Returns
Type | Description |
---|---|
Boolean | true if the workspace was successfully loaded; otherwise, false. |
Example
The following code shows how to use the WorkspaceManager component to save the form’s bounds and state, and the layout of DevExpress controls when a form is closed, and load this layout when the form starts.
You may need to call the controls’ ForceInitialize methods (e.g., GridControl.ForceInitialize) before applying layouts to the controls in a Form.Load event handler.
string file = "layout.xml";
string workspaceName1 = "MyLayout";
private void Form1_Load(object sender, EventArgs e) {
//Use the WorkspaceManager to handle the layout of DevExpress controls that reside within the current form.
workspaceManager1.TargetControl = this;
// Save & restore the form's size, position and state along with DevExpress controls' layouts.
workspaceManager1.SaveTargetControlSettings = true;
// Disable layout load animation effects
workspaceManager1.AllowTransitionAnimation = DevExpress.Utils.DefaultBoolean.False;
// Disable (de)serialization for the following controls (if required):
//WorkspaceManager.SetSerializationEnabled(gaugeControl1, false);
//WorkspaceManager.SetSerializationEnabled(accordionControl1, false);
// When restoring layouts of controls in a Form.Load event handler,
// you may need to call the controls' ForceInitialize methods to finish their initialization before restoring their layouts.
//gridControl1.ForceInitialize();
//dockManager1.ForceInitialize();
//barManager1.ForceInitialize();
//...
//Load DevExpress controls' layouts from a file
if (workspaceManager1.LoadWorkspace(workspaceName1, file, true))
workspaceManager1.ApplyWorkspace(workspaceName1);
}
private void Form1_FormClosed(object sender, FormClosedEventArgs e) {
//Save DevExpress controls' layouts to a file
workspaceManager1.CaptureWorkspace(workspaceName1, true);
workspaceManager1.SaveWorkspace(workspaceName1, file, true);
}