Сохранение и восстановление макета панелей¶
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.