PartitionPage.xaml 3.4 KB
Newer Older
A
Anran Zhang 已提交
1 2 3 4
<Page
    x:Class="Richasy.Bili.App.Pages.PartitionPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
A
Anran Zhang 已提交
5 6
    xmlns:bilibili="using:Richasy.Bili.Models.BiliBili"
    xmlns:controls="using:Richasy.Bili.App.Controls"
A
Anran Zhang 已提交
7
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
A
Anran Zhang 已提交
8 9
    xmlns:loc="using:Richasy.Bili.Locator.Uwp"
    xmlns:local="using:Richasy.Bili.App.Pages"
A
Anran Zhang 已提交
10
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
A
Anran Zhang 已提交
11
    xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
12
    xmlns:uwp="using:Richasy.Bili.ViewModels.Uwp"
A
Anran Zhang 已提交
13
    mc:Ignorable="d">
A
Anran Zhang 已提交
14 15

    <Grid>
A
Anran Zhang 已提交
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
        <VisualStateManager.VisualStateGroups>
            <VisualStateGroup>
                <VisualState x:Name="Wide">
                    <VisualState.StateTriggers>
                        <AdaptiveTrigger MinWindowWidth="{StaticResource CompactModeThresholdWidth}" />
                    </VisualState.StateTriggers>
                </VisualState>
                <VisualState x:Name="Narrow">
                    <VisualState.StateTriggers>
                        <AdaptiveTrigger MinWindowWidth="0" />
                    </VisualState.StateTriggers>
                    <VisualState.Setters>
                        <Setter Target="RootContainer.Padding" Value="{StaticResource NarrowContainerWithBottomPadding}" />
                    </VisualState.Setters>
                </VisualState>
            </VisualStateGroup>
        </VisualStateManager.VisualStateGroups>
        <ScrollViewer
            x:Name="RootContainer"
            Padding="{StaticResource DefaultContainerWithBottomPadding}"
            VerticalAlignment="Stretch"
            HorizontalScrollMode="Disabled"
            VerticalScrollBarVisibility="Auto"
            VerticalScrollMode="Enabled">
            <muxc:ItemsRepeater
                x:Name="PartitionView"
                x:Load="False"
                ItemsSource="{x:Bind ViewModel.PartitionCollection}"
                Loaded="OnItemsRepeaterLoadedAsync">
                <muxc:ItemsRepeater.ItemTemplate>
46
                    <DataTemplate x:DataType="uwp:PartitionViewModel">
R
Richasy 已提交
47
                        <controls:PartitionItem Data="{x:Bind}" ItemClick="OnPartitionItemClickAsync" />
A
Anran Zhang 已提交
48 49 50
                    </DataTemplate>
                </muxc:ItemsRepeater.ItemTemplate>
                <muxc:ItemsRepeater.Layout>
A
Anran Zhang 已提交
51
                    <controls:AdaptiveLayout
A
Anran Zhang 已提交
52
                        ItemsJustification="Start"
A
Anran Zhang 已提交
53 54 55 56
                        ItemsStretch="Fill"
                        MinColumnSpacing="12"
                        MinItemHeight="120"
                        MinItemWidth="112"
A
Anran Zhang 已提交
57 58
                        MinRowSpacing="12"
                        Orientation="Horizontal" />
A
Anran Zhang 已提交
59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
                </muxc:ItemsRepeater.Layout>
            </muxc:ItemsRepeater>
        </ScrollViewer>
        <StackPanel
            Margin="{StaticResource DefaultContainerPadding}"
            HorizontalAlignment="Center"
            VerticalAlignment="Center"
            Spacing="12"
            Visibility="{x:Bind ViewModel.IsLoading, Mode=OneWay}">
            <muxc:ProgressRing Style="{StaticResource PageProgressRingStyle}" />
            <TextBlock
                Style="{StaticResource CaptionTextBlockStyle}"
                HorizontalAlignment="Center"
                VerticalAlignment="Center"
                Text="{loc:LocaleLocator Name=PartitionLoading}" />
        </StackPanel>
A
Anran Zhang 已提交
75 76
    </Grid>
</Page>