private void LoadLayout(string path) { try { using (var stream = File.OpenRead(path)) { using (var archive = new ZipArchive(stream, ZipArchiveMode.Read)) { MainDockPanel.SuspendLayout(true); WindowPlacementManager.LoadWindowPlacement(this, archive.GetEntry("WindowPlacement.xml").Open()); LoadSubWindowsLayout(archive.GetEntry("SubWindowLayout.xml").Open()); } } Utility.Logger.Add(2, path + " からウィンドウ レイアウトを復元しました。"); } catch (FileNotFoundException) { Utility.Logger.Add(3, string.Format("ウィンドウ レイアウト ファイルは存在しません。")); MessageBox.Show("レイアウトが初期化されました。\r\n「表示」メニューからお好みのウィンドウを追加してください。", "ウィンドウ レイアウト ファイルが存在しません", MessageBoxButtons.OK, MessageBoxIcon.Information); fBrowser.Show(MainDockPanel); } catch (DirectoryNotFoundException) { Utility.Logger.Add(3, string.Format("ウィンドウ レイアウト ファイルは存在しません。")); MessageBox.Show("レイアウトが初期化されました。\r\n「表示」メニューからお好みのウィンドウを追加してください。", "ウィンドウ レイアウト ファイルが存在しません", MessageBoxButtons.OK, MessageBoxIcon.Information); fBrowser.Show(MainDockPanel); } catch (Exception ex) { Utility.ErrorReporter.SendErrorReport(ex, "ウィンドウ レイアウトの復元に失敗しました。"); } finally { MainDockPanel.ResumeLayout(true, true); } }
private void LoadLayout(string path) { try { using (var stream = File.OpenRead(path)) { using (var archive = new ZipArchive(stream, ZipArchiveMode.Read)) { MainDockPanel.SuspendLayout(true); WindowPlacementManager.LoadWindowPlacement(this, archive.GetEntry("WindowPlacement.xml").Open()); LoadSubWindowsLayout(archive.GetEntry("SubWindowLayout.xml").Open()); } } Utility.Logger.Add(2, string.Format(Resources.LayoutLoaded, path)); } catch (FileNotFoundException) { Utility.Logger.Add(3, string.Format(Resources.NoLayoutFound)); MessageBox.Show(Resources.InitLayout, Resources.NoLayoutFound, MessageBoxButtons.OK, MessageBoxIcon.Information); fBrowser.Show(MainDockPanel); } catch (DirectoryNotFoundException) { Utility.Logger.Add(3, string.Format(Resources.NoLayoutFound)); MessageBox.Show(Resources.InitLayout, Resources.NoLayoutFound, MessageBoxButtons.OK, MessageBoxIcon.Information); fBrowser.Show(MainDockPanel); } catch (Exception ex) { Utility.ErrorReporter.SendErrorReport(ex, LoggerRes.FailedLoadLayout); } finally { MainDockPanel.ResumeLayout(true, true); } }