/// <summary> /// Populates the page with content passed during navigation. Any saved state is also /// provided when recreating a page from a prior session. /// </summary> /// <param name="navigationParameter">The parameter value passed to /// <see cref="Frame.Navigate(Type, Object)"/> when this page was initially requested. /// </param> /// <param name="pageState">A dictionary of state preserved by this page during an earlier /// session. This will be null the first time a page is visited.</param> protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState) { // Allow saved page state to override the initial item to display if (pageState != null) { if (pageState.ContainsKey(ITEM_VIEW_MODEL)) { if (pageState[ITEM_VIEW_MODEL] != null) { this.itemViewModel = pageState[ITEM_VIEW_MODEL] as ItemViewModel; } } } if (itemViewModel == null) { if (navigationParameter != null) { repo = navigationParameter as RepoItem; itemViewModel = new ItemViewModel(repo); } } if (itemViewModel != null) { this.DataContext = itemViewModel; } }
private Style GetItemStyle(RepoItem item) { Style style = CplusplusStyle; switch (item.language) { case "C++": style = CplusplusStyle; break; case "Java": style = JavaStyle; break; case "JavaScript": style = JavaScriptStyle; break; case "C": style = CStyle; break; case "C#": style = CsharpStyle; break; case "Ruby": style = RubyStyle; break; default: style = XSLTStyle; break; } return style; }
public ItemViewModel(RepoItem repo) { this.Repo = repo; }