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

This commit is contained in:
tangge233
2024-08-05 00:41:00 +08:00
parent 591421393f
commit d915cd48f6
@@ -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) Dim IsContainItem As Boolean = Mods.Any()
Card.CanSwap = If(Mods.Any(), True, False) List.Visibility = If(IsContainItem, Visibility.Visible, Visibility.Collapsed)
'CanSwap 设置无效果,不知道为什么
Card.CanSwap = IsContainItem
Card.IsSwaped = Not IsContainItem
End Sub End Sub
#End Region #End Region