XAML Hub Control Windows 8.1 Universal app

时间:2014-08-04 13:32:12

标签: c# xaml winrt-xaml windows-8.1 win-universal-app

为什么Windows 8.1中的集线器控件看起来像是在顶部增加了120像素?

我已按如下方式嵌套我的Hub控件:

<Grid Background="{StaticResource DmWhiteBrush}">
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>

        <controls:TopNavigationBarControl Grid.Row="0" />

        <Hub
            Grid.Row="1"
            Margin="0"
            VerticalContentAlignment="Stretch"                 >
            <HubSection
                VerticalContentAlignment="Stretch" > DATA BLA BLA
            </HubSection>

在我的集线器和我的控件之间:TopNavigationBarControl似乎有大约120个额外像素,我发现没有什么比在hub元素上添加负上边距更好,但那不是很好。有没有人知道我可以做些什么来消除这个?我不想在hub元素中使用标题。谢谢!

编辑: 到目前为止,我发现没有什么比编辑集线器的模板更好,并删除标题并使用混合删除顶部填充。此外,我已添加

的集线器元素
<Hub
    Grid.Row="0"
    Grid.RowSpan="2"
    Margin="0">

Edit2:在混合中,我无法找到那些额外像素的位置!我可以清楚地看到仍然有一个标题空间,即使我已经删除了混合中的网格行定义。

1 个答案:

答案 0 :(得分:4)

您还需要删除每个Padding的{​​{1}}。

这是HubSection控件的默认填充。

HubSection

将第二个<Setter Property="Padding" Value="40,40,40,44"/> 更改为40会折叠其中的所有空格。

0

<强>更新

这是代码及其在设计器上的样子。当我运行它时它看起来完全一样。

enter image description here

enter image description here