private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
        {
            var pageUrls = new List <SavedPageInfo>();
            var arr      = TabFormControl.Pages.ToArray();

            foreach (var page in arr)
            {
                var browser = GetBrowserControl(page);
                if (browser == null)
                {
                    continue;
                }

                var newItem = new SavedPageInfo()
                {
                    Url   = browser.XWV.Url,
                    Title = page.Text
                };
                pageUrls.Add(newItem);
            }
            AppSavedState.Update((state) =>
            {
                state.OpenPages = pageUrls;
            });
        }
        public MainForm()
        {
            InitializeComponent();
            var iconPath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Resources/main.ico");

            IconOptions.Icon            = new Icon(iconPath);
            TabFormControl.PageCreated += (s, e) =>
            {
                InitPage(e.Page);
            };
            TabFormControl.SelectedPageChanged += (s, e) =>
            {
                OnSelectPage(e.Page);
            };
            InitPage(TabFormControl.Pages[0]);
            OnSelectPage(TabFormControl.Pages[0]);

            var state = AppSavedState.Load();

            if (state.OpenPages?.Any() == true)
            {
                var defaultPage = TabFormControl.Pages[0];
                foreach (var item in state.OpenPages)
                {
                    TabFormControl.AddNewPage();
                    var page = TabFormControl.Pages.Last();
                    page.Text = item.Title;
                    var browser = GetBrowserControl(page);
                    browser.XWV.WaitInitialization().ContinueWith(async(t) =>
                    {
                        await browser.XWV.WaitWhileNavigating();
                        await browser.XWV.LoadUrl(item.Url);
                    });
                }
                TabFormControl.ClosePage(defaultPage);
            }
        }