diff --git a/Needlework.Net/ViewModels/Pages/Home/HomeViewModel.cs b/Needlework.Net/ViewModels/Pages/Home/HomeViewModel.cs index bf32152..f51a0fb 100644 --- a/Needlework.Net/ViewModels/Pages/Home/HomeViewModel.cs +++ b/Needlework.Net/ViewModels/Pages/Home/HomeViewModel.cs @@ -29,13 +29,18 @@ public partial class HomeViewModel : PageBase, IEnableLogger .Select(time => Unit.Default) .Subscribe(_ => { - if (SelectedHextechDocsPostsIndex == HextechDocsPosts.Count - 1) + if (SelectedHextechDocsPost is HextechDocsPostViewModel vm) { - SelectedHextechDocsPostsIndex = 0; - } - else - { - SelectedHextechDocsPostsIndex += 1; + var index = HextechDocsPosts.IndexOf(vm); + if (index == HextechDocsPosts.Count - 1) + { + index = 0; + } + else + { + index += 1; + } + SelectedHextechDocsPost = HextechDocsPosts.ElementAt(index); } }); } @@ -52,7 +57,7 @@ public partial class HomeViewModel : PageBase, IEnableLogger private List _hextechDocsPosts = []; [ObservableProperty] - private int _selectedHextechDocsPostsIndex; + private HextechDocsPostViewModel? _selectedHextechDocsPost; public override async Task InitializeAsync() { @@ -63,6 +68,7 @@ public partial class HomeViewModel : PageBase, IEnableLogger Dispatcher.UIThread.Invoke(() => { HextechDocsPosts = hextechDocsPosts; + SelectedHextechDocsPost = HextechDocsPosts.First(); }); } catch (Exception ex) diff --git a/Needlework.Net/Views/Pages/Home/HomeView.axaml b/Needlework.Net/Views/Pages/Home/HomeView.axaml index af83bcf..aed4a75 100644 --- a/Needlework.Net/Views/Pages/Home/HomeView.axaml +++ b/Needlework.Net/Views/Pages/Home/HomeView.axaml @@ -41,19 +41,9 @@ - - - - - - - - - - + THE PROGRAM IS PROVIDED “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF MERCHANTABILITY, NONINFRINGMENT, OR OF FITNESS FOR A PARTICULAR PURPOSE. LICENSOR DOES NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE PROGRAM WILL MEET YOUR REQUIREMENTS OR THAT OPERATION WILL BE UNINTERRUPTED OR ERROR FREE. LICENSOR MAKES NO WARRANTIES RESPECTING ANY HARM THAT MAY BE CAUSED BY MALICIOUS USE OF THIS SOFTWARE. LICENSOR FURTHER EXPRESSLY DISCLAIMS ANY WARRANTY OR REPRESENTATION TO AUTHORIZED USERS OR TO ANY THIRD PARTY.