Сохранение и восстановление макета панелей¶
Dock Manager позволяет сохранять макет закрепляемых панелей и документов, а затем восстанавливать его. Используйте методы DockManager.SaveLayout и DockManager.RestoreLayout для сериализации и десериализации макета.
Все панели и документы должны иметь уникальные имена, которые вы можете указать с помощью свойства Name. Уникальные имена обеспечивают корректную идентификацию и сериализацию элементов закрепления.
<mxd:DockGroup Orientation="Horizontal" DockHeight="*">
    <mxd:DockPane Name="dockPaneErrors" Header="Error List"/>
    <mxd:DockPane Name="dockPaneOutput" Header="Output"/>
</mxd:DockGroup>
Метод DockManager.SaveLayout использует указанный поток как есть - он не очищает поток и не изменяет текущую позицию потока перед сохранением макета.
Пример¶
Следующий пример показывает, как можно сохранить макет элементов закрепления в файл и восстановить сохранённый макет.
string fileName = "docking_layout.xml";
private void BtnSave_Click(object? sender, Avalonia.Interactivity.RoutedEventArgs e)
{
    using (var stream = new FileStream(fileName, FileMode.Create, FileAccess.Write))
    {
        dockManager1.SaveLayout(stream);
    }
}
private void BtnRestore_Click(object? sender, Avalonia.Interactivity.RoutedEventArgs e)
{
    if (!File.Exists(fileName)) return;
    using (FileStream fileStream = File.OpenRead(fileName))
    {
        dockManager1.RestoreLayout(fileStream);
    }
}
* Эта страница была переведена с помощью нейросети Deepseek.