public ProjectPage(Project project) { InitializeComponent(); DataContext = this; persistor = new Persistor(); linkViewService = new LinkViewService(); Project = project; var linkViews = LinkMappers.MapToView(project.Links); linkViews = new ObservableCollection <LinkView>(linkViews.OrderBy(link => link.Name)); Links = linkViews; TilesControl.Init(Links, Project); }
private void Page_Loaded(object sender, RoutedEventArgs e) { try { var window = Window.GetWindow(this); this.NavigationService.RemoveBackEntry(); _NavigationService = this.NavigationService; _NavigationService.Navigating += NavigationService_Navigating; ApplyLayout(); UpdateEnablingWebBrowserNavButtons(); HideScriptErrors(webBrowser, true); window.SizeChanged += new SizeChangedEventHandler(Window_SizeChanged); window.Closing += new CancelEventHandler(Window_Closing); webBrowser.LoadCompleted += webBrowser_LoadCompleted; TilesControl.DataChanged += (_1, _2) => { Save(); }; foreach (var linkId in Project.History) { var linkView = Links.FirstOrDefault(n => n.Id == linkId); if (linkView != null) { TilesControl.Model.HistoryLinks.Add(linkView); } } TilesControl.Focus(); timer = new Timer(500); timer.Elapsed += Timer_Elapsed; timer.Start(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error", MessageBoxButton.OK, MessageBoxImage.Error); } }
private void BtnAddLink_Click(object sender, RoutedEventArgs e) { TilesControl.AddNewLink(PageTitle, Url); }