【发布时间】:2013-07-11 03:07:05
【问题描述】:
我正在尝试以某种方式自定义 PhoneApplicationFrame,但我不明白我必须如何继续。
让我解释一下:我正在开发一个 WP 8 应用程序,我想要一个背景声音和音效(同时)。在寻求帮助后,在this post 上,有人建议我使用MediaElement 并将其添加到PhoneApplicationFrame 的XAML 中(这是正确的吗?)。
我在这件事上做了什么:
我创建了一个框架(称为 IntroFrame)并将其设置为 App.xaml.cs 文件中的 RootFrame。原来如此:
public partial class App
{
public static IntroFrame RootFrame {get; private set;}
...
}
在InitializePhoneApplication 方法中,我修改了代码:
private void InitializePhoneApplication()
{
...
RootFrame = new IntroFrame();
RootFrame.Navigated += CompleteInitializePhoneApplication;
...
}
在 XAML 中,我尝试添加 MediaElement :
<phone:PhoneApplicationFrame
x:Class="PazaakPhone.IntroFrame"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone"
xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
mc:Ignorable="d"
shell:SystemTray.IsVisible="True">
<MediaElement x:Name="BackgroundMedia" Source="Assets/Audio/bgm.mp3" AutoPlay="True" />
</phone:PhoneApplicationFrame>
框架看起来不错,我尝试了像here 这样的高度技巧,它奏效了。但是,我尝试自定义该框架,添加视觉元素,更改该 MediaElement 并且什么都没有……没有效果。我猜PhoneApplicationFrame 不能有像PhoneApplicationPage 这样的内容?我想我可以在后台执行此操作,而 Frame 托管所有其他页面。但要么我走错了路,要么我错过了一些东西。会是什么?
【问题讨论】:
标签: c# xaml windows-phone-8 windows-phone