DockManager.RestoreLayoutError Event
Occurs when a saved layout is invalid and cannot be restored. Allows you to fix restore layout exceptions.
Namespace: DevExpress.XtraBars.Docking
Assembly: DevExpress.XtraBars.v25.1.dll
NuGet Package: DevExpress.Win.Navigation
Declaration
[DXCategory("Layout")]
public event EventHandler<RestoreLayoutErrorEventArgs> RestoreLayoutError
Event Data
The RestoreLayoutError event's data class is RestoreLayoutErrorEventArgs. The following properties provide information specific to this event:
| Property | Description |
|---|---|
| Exceptions | Gets the list of exceptions that occurred during the restore layout operation. |
| IsLayoutBroken | Gets whether the layout cannot be restored due to the invalid layout file. |
| Throw | Gets or sets whether to throw exceptions that occur during the restore layout operation. |
The event data class exposes the following methods:
| Method | Description |
|---|---|
| ThrowIfRestoreLayoutExceptionsNotHandled() | For internal use. |
Remarks
The TabContainerActiveChildNotSetException occurs when the DockPanel.ActiveChild property of the restored tab container is not specified.
Follow the steps below to fix this exception:
- Handle the
RestoreLayoutErrorevent. - Obtain the exception from the e.Exceptions list.
- Assign the container’s child panel to the ActiveChild property.
- Set the e.Throw property to
falseto suppress the exception.
void dockManager1_RestoreLayoutError(object sender, DevExpress.Utils.Serializing.RestoreLayoutErrorEventArgs e) {
foreach (var exception in e.Exceptions) {
if (exception is TabContainerActiveChildNotSetException activeChildException)
activeChildException.Panel.ActiveChild = activeChildException.Panels[1];
}
e.Throw = false;
}
See Also