Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# UWP隐藏选项卡视图页脚_C#_Xaml_Uwp_Win Universal App_Tabview - Fatal编程技术网

C# UWP隐藏选项卡视图页脚

C# UWP隐藏选项卡视图页脚,c#,xaml,uwp,win-universal-app,tabview,C#,Xaml,Uwp,Win Universal App,Tabview,我的TabView基本上是这样的: <controls:TabView x:Name="PlaylistTabView"> <controls:TabView.ItemHeaderTemplate> <DataTemplate x:DataType="data:Playlist"> // Something </DataTemplate

我的TabView基本上是这样的:

    <controls:TabView
        x:Name="PlaylistTabView">
        <controls:TabView.ItemHeaderTemplate>
            <DataTemplate x:DataType="data:Playlist">
                // Something
            </DataTemplate>
        </controls:TabView.ItemHeaderTemplate>
        <controls:TabView.ItemTemplate>
            <DataTemplate x:DataType="data:Playlist">
                <local:HeaderedPlaylistControl IsPlaylist="True" Loaded="HeaderedPlaylistControl_Loaded" />
            </DataTemplate>
        </controls:TabView.ItemTemplate>

        <controls:TabView.TabStartHeader>
            // Something
        </controls:TabView.TabStartHeader>

        <controls:TabView.TabEndHeader>
            // Something
        </controls:TabView.TabEndHeader>

        <controls:TabView.Footer>
            <RelativePanel
                x:Name="PlaylistFooter"
                Height="{StaticResource PlaylistTabFooterHeight}"
                RenderTransformOrigin="0,0">
                <RelativePanel.RenderTransform>
                    <TranslateTransform />
                </RelativePanel.RenderTransform>
                <local:IconTextButton
                    x:Name="ShowAllPlaylistButton"
                    Padding="10,5"
                    IconTextMargin="0,0,10,0"
                    LabelPosition="Left"
                    RelativePanel.AlignRightWithPanel="True"
                    Style="{StaticResource PlaylistIconTextButtonStyle}"
                    ToolTipService.ToolTip="Show All Playlists">
                    <local:IconTextButton.Icon>
                        <FontIcon
                            x:Name="UpArrowIcon"
                            FontFamily="Segoe MDL2 Assets"
                            FontWeight="{x:Bind ShowAllPlaylistButton.FontWeight}"
                            Glyph="&#xE70E;"
                            RenderTransformOrigin=".5,.5">
                            <FontIcon.RenderTransform>
                                <RotateTransform />
                            </FontIcon.RenderTransform>
                        </FontIcon>
                    </local:IconTextButton.Icon>
                    <local:IconTextButton.Flyout>
                        <MenuFlyout Closed="ClosePlaylistsFlyout" Opening="OpenPlaylistsFlyout" />
                    </local:IconTextButton.Flyout>
                </local:IconTextButton>
                <local:IconTextButton
                    x:Name="SortByButton"
                    Padding="10,5"
                    HorizontalAlignment="Right"
                    Icon="Sort"
                    IconTextMargin="10,0,0,0"
                    Label="Sort By Title"
                    LabelPosition="Right"
                    RelativePanel.AlignLeftWithPanel="True"
                    Style="{StaticResource PlaylistIconTextButtonStyle}"
                    Tapped="SortByButton_Tapped"
                    ToolTipService.ToolTip="Sort Playlists" />
            </RelativePanel>
        </controls:TabView.Footer>
    </controls:TabView>

//某物
//某物
//某物
我在
ItemTemplate
中有一个
local:HeaderedPlaylistControl
,它基本上是一个
ListView
。我想实现这样的效果,当你向下滚动时,页脚会向下平移,当你向上滚动时,页脚会很快显示出来

我能够实现这样的效果。但是,我只移动了
播放页脚
而不是
选项卡.Footer
,这意味着
页脚
会在底部留下一个空白,如下图所示。我怎样才能移动页脚呢


我检查了你的代码,我发现你已经为
播放页脚
实现了
TranslateTransform
,如果你只是向下移动
播放页脚
,而不是将可见性设置为
折叠
,页脚仍然会显示,因此更好的方法是将可见性设置为
折叠

<VisualStateGroup x:Name="FooterVisibilityStates">
    <VisualState x:Name="FooterFadeIn">
        <Storyboard>
            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PlaylistFooter" Storyboard.TargetProperty="Opacity">
                <EasingDoubleKeyFrame KeyTime="0" Value="0" />
                <EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="1" />
            </DoubleAnimationUsingKeyFrames>
            <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaylistFooter" Storyboard.TargetProperty="Visibility">
                <DiscreteObjectKeyFrame KeyTime="0" Value="Collapsed"/>
                <DiscreteObjectKeyFrame KeyTime="0:0:0.3" Value="Visibility" />
            </ObjectAnimationUsingKeyFrames>

        </Storyboard>
    </VisualState>
    <VisualState x:Name="FooterFadeOut">
        <Storyboard>
            <DoubleAnimationUsingKeyFrames Storyboard.TargetName="PlaylistFooter" Storyboard.TargetProperty="Opacity">
                <EasingDoubleKeyFrame KeyTime="0" Value="1" />
                <EasingDoubleKeyFrame KeyTime="0:0:0.4" Value="0" />
            </DoubleAnimationUsingKeyFrames>
            <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaylistFooter" Storyboard.TargetProperty="Visibility">
                <DiscreteObjectKeyFrame KeyTime="0" Value="Visible"/>
                <DiscreteObjectKeyFrame KeyTime="0:0:0.4" Value="Collapsed" />
            </ObjectAnimationUsingKeyFrames>
            <ObjectAnimationUsingKeyFrames Storyboard.TargetName="PlaylistFooter" Storyboard.TargetProperty="IsHitTestVisible">
                <DiscreteObjectKeyFrame KeyTime="0" Value="False" />
            </ObjectAnimationUsingKeyFrames>
        </Storyboard>
    </VisualState>
</VisualStateGroup>

我不是在寻找FadeIn/Out效果,而是元素转换。我希望页脚及其内容同时向下移动。是的,更好的方法是自定义选项卡视图,并为添加上面的VisualState,然后在listview上下滚动时调用这两个VisualState。很难设计如果您想让我自定义它,我在哪里可以找到
选项卡视图
的源样式?我认为将
选项卡.Footer
背景设置为透明可能更容易。您也可以在上面的代码中添加翻译,但当页脚隐藏时,它将闪烁<代码>我已经共享了上面的TableView。
<Storyboard x:Name="HideFooterAnimation">
        <DoubleAnimation
            Storyboard.TargetName="PlaylistFooter"
            Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.Y)"
            To="0"
            Duration="0:0:0.1" />
        <ObjectAnimationUsingKeyFrames
            Storyboard.TargetName="PlaylistFooter"
            Storyboard.TargetProperty="Height"
            Duration="0:0:0.1">
            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PlaylistTabFooterHeight}" />
        </ObjectAnimationUsingKeyFrames>
    </Storyboard>
    <Storyboard x:Name="ShowFooterAnimation">
        <DoubleAnimation
            Storyboard.TargetName="PlaylistFooter"
            Storyboard.TargetProperty="(UIElement.RenderTransform).(TranslateTransform.Y)"
            To="{StaticResource PlaylistTabFooterHeight}"
            Duration="0" />
        <ObjectAnimationUsingKeyFrames
            Storyboard.TargetName="PlaylistFooter"
            Storyboard.TargetProperty="Height"
            Duration="0">
            <DiscreteObjectKeyFrame KeyTime="0" Value="0" />
        </ObjectAnimationUsingKeyFrames>
</Storyboard>