private void Pages_CollectionChanged(object sender, CollectionChangeEventArgs e) { switch (e.Action) { case CollectionChangeAction.Refresh: if (this.Pages.Count == 0) { this._selectedPage = null; Update("selectedIndex"); } break; case CollectionChangeAction.Remove: if (e.Element == this.SelectedPage) { if (this.Pages.Count > 0) { this.SelectedPage = this.Pages.FirstOrDefault(p => p.Visible); } else { this._selectedPage = null; } Update("selectedIndex"); } break; } }
// Handles changePage event coming from the client. private void ProcessChangePageWebEvent(WisejEventArgs e) { RibbonBarPage page = e.Parameters.Page; if (page != null) { this._selectedPage = page; OnSelectedPageChanged(EventArgs.Empty); } }