Bladeren bron

feat: 无可更新 Mod 时隐藏对应卡片

tangge233 2 jaren geleden
bovenliggende
commit
d915cd48f6
1 gewijzigde bestanden met toevoegingen van 10 en 5 verwijderingen
  1. 10 5
      Plain Craft Launcher 2/Pages/PageVersion/PageVersionMod.xaml.vb

+ 10 - 5
Plain Craft Launcher 2/Pages/PageVersion/PageVersionMod.xaml.vb

@@ -146,14 +146,16 @@
     ''' 刷新卡片标题。
     ''' 刷新卡片标题。
     ''' </summary>
     ''' </summary>
     Private Sub RefreshTitle()
     Private Sub RefreshTitle()
-        RefreshTargetTitle(PanDefaultListBack, PanDefaultList, "启用 Mod")
+        RefreshTargetTitle(PanDefaultListBack, PanDefaultList, "已启用 Mod")
         RefreshTargetTitle(PanUpdateListBack, PanUpdateList, "可更新 Mod")
         RefreshTargetTitle(PanUpdateListBack, PanUpdateList, "可更新 Mod")
-        RefreshTargetTitle(PanDisabledListBack, PanDisabledList, "禁用 Mod")
+        '没有可以更新的 Mod 就暂时隐藏卡片
+        PanUpdateListBack.Visibility = If(PanUpdateList.Children.Count.Equals(0), Visibility.Collapsed, Visibility.Visible)
+        RefreshTargetTitle(PanDisabledListBack, PanDisabledList, "已禁用的 Mod")
         RefreshTargetTitle(PanUnavaliableListBack, PanUnavaliableList, "暂不可用 Mod")
         RefreshTargetTitle(PanUnavaliableListBack, PanUnavaliableList, "暂不可用 Mod")
     End Sub
     End Sub
 
 
     Private Sub RefreshTargetTitle(Card As MyCard, List As StackPanel, Name As String)
     Private Sub RefreshTargetTitle(Card As MyCard, List As StackPanel, Name As String)
-        Dim Mods = List.Children.Cast(Of MyLocalModItem).Select(Function(i) i.Entry).ToList
+        Dim Mods = List.Children.Cast(Of MyLocalModItem).ToList
         If Not IsSearching Then
         If Not IsSearching Then
             Card.Title = Name & " 列表 (" & Mods.Count & ")"
             Card.Title = Name & " 列表 (" & Mods.Count & ")"
         ElseIf Mods.Any() Then
         ElseIf Mods.Any() Then
@@ -161,8 +163,11 @@
         Else
         Else
             Card.Title = Name & " 列表无搜索结果"
             Card.Title = Name & " 列表无搜索结果"
         End If
         End If
-        List.Visibility = If(Mods.Any(), Visibility.Visible, Visibility.Collapsed)
-        Card.CanSwap = If(Mods.Any(), True, False)
+        Dim IsContainItem As Boolean = Mods.Any()
+        List.Visibility = If(IsContainItem, Visibility.Visible, Visibility.Collapsed)
+        'CanSwap 设置无效果,不知道为什么
+        Card.CanSwap = IsContainItem
+        Card.IsSwaped = Not IsContainItem
     End Sub
     End Sub
 
 
 #End Region
 #End Region