总是显示在Silverlight页面的顶部
本文关键字:顶部 Silverlight 显示 | 更新日期: 2023-09-27 17:50:17
我正在开发一个Silverlight导航应用程序,它有三个部分:
- 公司标志与菜单(固定高度)的上方部分
- 中间部分容纳导航框架(可变高度)
- 底部部分有一些版权信息和声音开关按钮(固定高度)
中间部分拉伸到需要显示整个内容的程度,但它也将视图设置为页面的中间。我希望总是有页面的顶部(菜单)显示。
我怎样才能做到这一点?
是的,你所描述的本质上是一个"Silverlight导航应用程序"。如果您创建了这种类型的项目,模板将为您提供您在开始时描述的大部分内容。
创建了这个新项目,我建议做以下更改。将主页修改如下:-
<Grid x:Name="LayoutRoot" Style="{StaticResource LayoutRootGridStyle}">
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<Grid x:Name="NavigationGrid" Style="{StaticResource NavigationGridStyle}">
<!-- Cut for brevity -->
</Grid>
<Border x:Name="ContentBorder" Style="{StaticResource ContentBorderStyle}" Grid.Row="1">
<!-- Cut for brevity -->
</Border>
<Border x:Name="FooterBorder" Style="{StaticResource FooterBorderStyle}" Grid.Row="2">
<Grid>
<TextBlock Text="Copyright info here" />
</Grid>
</Border>
</Grid>
修改" navigationridstyle "answers"ContentBorderStyle",并在/Assets/styles中添加"FooterBorderStyle"Xaml像这样:-
<Style x:Key="ContentBorderStyle" TargetType="Border">
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush EndPoint="0.5,0.045" StartPoint="0.5,0">
<GradientStop Color="#6FCCCCCC"/>
<GradientStop Color="#00CCCCCC" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="BorderBrush" Value="#FFFFFFFF"/>
<Setter Property="BorderThickness" Value="0,3,0,0"/>
</Style>
<Style x:Key="NavigationGridStyle" TargetType="Grid">
<Setter Property="Background" Value="{StaticResource NavigationBackgroundColorBrush}"/>
</Style>
<Style x:Key="FooterBorderStyle" TargetType="Border">
<!-- Whatever styling if any you want here -->
</Style>