我的应用程序出现了一个奇怪的问题。即使我使用Visual Studio 2012中的模板创建了一个全景页面,当我加载应用程序时,项目2会在很短的时间内首先出现,然后视图切换到项目1。我非常确定它不应该是这样的。知道是怎么回事吗?
<Grid x:Name="LayoutRoot">
<controls:Panorama Title="my application">
<!--Panorama item one-->
<controls:PanoramaItem Header="item1">
<Grid/>
</controls:PanoramaItem>
<!--Panorama item two-->
<controls:PanoramaItem Header="item2">
<Grid/>
</controls:PanoramaItem>
</controls:Panorama>
</Grid>发布于 2013-03-07 20:24:11
这是标准的全景行为。但是你可以用这种方式来修复它:
<phone:PhoneApplicationPage
... some lines missed ...
Loaded="MainPage_OnLoaded">
<Grid x:Name="LayoutRoot">
<controls:Panorama x:Name="MainPanorama" Title="my application">
<controls:PanoramaItem x:Name="DefaultItem" Header="item1">
<Grid/>
</controls:PanoramaItem>
<controls:PanoramaItem Header="item2">
<Grid/>
</controls:PanoramaItem>
</controls:Panorama>
</Grid>
</phone:PhoneApplicationPage>Item1有一个名称,并添加了对已加载事件的订阅。
然后在代码隐藏中:
public partial class MainPage : PhoneApplicationPage
{
public MainPage()
{
InitializeComponent();
}
private void MainPage_OnLoaded(object sender, RoutedEventArgs e)
{
MainPanorama.DefaultItem = DefaultItem;
}
}https://stackoverflow.com/questions/15260756
复制相似问题