WindowsPhone 8 постоянный AdControl
Я хочу сделать многостраничное приложение для WindowsPhone 8, которое имеет AdControl
внизу. Теперь мне интересно узнать, есть ли возможность поместить AdControl в отдельный фрейм, чтобы навигация страницы не мешала ему. В основном я пытаюсь разделить приложение ViewPort
на 2 части: приложение и AdControl.
AdControl всегда должен быть включен, и нет необходимости добавлять его на разные страницы и обновлять его каждый раз при выполнении навигации.
Можно ли что-то подобное сделать?
1 ответ
Вы можете сделать это, установив стиль PhoneApplicationFrame. В App.xaml добавьте следующий ресурс
<Style x:Key="AdPhoneApplicationFrameStyle" TargetType="phone:PhoneApplicationFrame">
<Setter Property="IsTabStop" Value="False"/>
<Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}"/>
<Setter Property="FontSize" Value="{StaticResource PhoneFontSizeNormal}"/>
<Setter Property="FontFamily" Value="{StaticResource PhoneFontFamilyNormal}"/>
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="VerticalAlignment" Value="Stretch"/>
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
<Setter Property="VerticalContentAlignment" Value="Stretch"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="BorderThickness" Value="0"/>
<Setter Property="BorderBrush" Value="{x:Null}"/>
<Setter Property="Padding" Value="0"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="phone:PhoneApplicationFrame">
<Border x:Name="ClientArea" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" HorizontalAlignment="{TemplateBinding HorizontalAlignment}" VerticalAlignment="{TemplateBinding VerticalAlignment}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<ContentPresenter ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" Margin="{TemplateBinding Padding}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
<adDuplex:AdControl Grid.Row="1"/>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
В App.xaml.cs в пределах InitializePhoneApplication
добавьте следующую строку после создания RootFrame
RootFrame.Style = (Style)Resources["AdPhoneApplicationFrameStyle"];
Если вы хотите иметь переходы страниц, см. Этот блог для получения дополнительной информации.