/// <summary> /// セマンティックズームコントロールのズームが変更された時に実行されます。 /// </summary> private void SpacomicSemantics_ViewChangeStarted(object sender, SemanticZoomViewChangedEventArgs e) { if (!e.IsSourceZoomedInView) { var selectedGroupFirst = (e.SourceItem.Item as SpacomicRSSItemsGroup)?.Items?.First(); if ((SpacomicRSSList.Items?.Any() ?? false) && selectedGroupFirst != null) { SpacomicRSSList.SelectedItem = selectedGroupFirst; SpacomicRSSList.ScrollIntoView(selectedGroupFirst); } } }
/// <summary> /// <see cref="GridView"/>の先頭のアイテムにジャンプします。 /// </summary> /// <remarks><see cref="SpacomicMainView"/>から呼び出します。</remarks> public void GridViewJumpToFirstItem() { if (SpacomicSemantics.IsZoomedInViewActive) { if (SpacomicRSSList.Items?.Any() ?? false) { SpacomicRSSList.SelectedIndex = 0; SpacomicRSSList.ScrollIntoView(SpacomicRSSList.Items[0]); } } else { if (SpacomicRSSDateList.Items?.Any() ?? false) { SpacomicRSSDateList.SelectedIndex = 0; SpacomicRSSDateList.ScrollIntoView(SpacomicRSSDateList.Items[0]); } } }