В настоящее время я работаю над своим первым приложением, ориентированным на Windows Phone 7.1, и, похоже, не может его запустить в эмуляторе. Проект строится успешно, но когда я отлаживаю экран эмулятора, он остается черным. Никаких исключений, похоже, не бросают, и я могу заставить программу ломаться на контрольных точках, хотя в окне «Локали» не отображаются переменные. Я пробовал каждый из доступных эмуляторов не повезло:Эмулятор Windows Phone 7.1 не загружает приложение
- Windows Phone Emulator - 512 MB
- Windows Phone Emulator - 256 MB
- Windows Phone Emulator 7.8 512 MB
- Windows Phone Emulator 7.8 256 МБ
Другое сообщение в Interwebz сказано, чтобы убедиться, что ящики Build и Deploy отмечены в Configuration Manager и мои.
Мой MainPage.xaml нет ничего с ума:
<phone:PhoneApplicationPage
x:Class="NationalParkGuide.MainPage"
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:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="800"
d:DataContext="{d:DesignData SampleData/MainViewModelSampleData.xaml}"
FontFamily="{StaticResource PhoneFontFamilyNormal}"
FontSize="{StaticResource PhoneFontSizeNormal}"
Foreground="{StaticResource PhoneForegroundBrush}"
SupportedOrientations="Portrait" Orientation="Portrait"
shell:SystemTray.IsVisible="False">
<!--LayoutRoot is the root grid where all page content is placed-->
<Grid x:Name="LayoutRoot" Background="Transparent">
<!--Panorama control-->
<controls:Panorama Title="national park guide">
<controls:Panorama.Background>
<ImageBrush ImageSource="Yosemite.jpg" />
</controls:Panorama.Background>
<!--Panorama item one-->
<controls:PanoramaItem Header="menu">
<!--Double line list with text wrapping-->
<ListBox Margin="0,0,-12,0" ItemsSource="{Binding Items}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17" Width="432" Height="78">
<TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</controls:PanoramaItem>
<!--Panorama item two-->
<!--Use 'Orientation="Horizontal"' to enable a panel that lays out horizontally-->
<controls:PanoramaItem Header="second item">
<!--Double line list with image placeholder and text wrapping-->
<ListBox Margin="0,0,-12,0" ItemsSource="{Binding Items}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" Margin="0,0,0,17">
<!--Replace rectangle with image-->
<Rectangle Height="100" Width="100" Fill="#FFE5001b" Margin="12,0,9,0"/>
<StackPanel Width="311">
<TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
<TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
</StackPanel>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</controls:PanoramaItem>
</controls:Panorama>
</Grid>
</phone:PhoneApplicationPage>
MainPage.xaml.cs не был изменен с автоматически генерируемым кода еще:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
namespace NationalParkGuide
{
public partial class MainPage : PhoneApplicationPage
{
public MainPage()
{
InitializeComponent();
DataContext = App.ViewModel;
this.Loaded += new RoutedEventHandler(MainPage_Loaded);
}
private void MainPage_Loaded(object sender, RoutedEventArgs e)
{
if (!App.ViewModel.IsDataLoaded)
{
App.ViewModel.LoadData();
}
}
}
}
Помощь! :)
Дополнительная информация
Я побежал dxdiag.exe и может подтвердить, я отвечать требованиям 7.1 эмулятора. DirectX 11 и WDDM 1.1.
Опишите, что происходит при попытке запустить эмулятор. Есть вероятность, что приложение просто сработает. Попробуйте сделать отладку (F5) в Visual Studio и посмотреть, как далеко она проходит. – ogggre
Я обновил сообщение, чтобы описать, что происходит при отладке. – Brian
Я запустил ваш код и его работоспособность. По моему мнению, в этом коде нет ничего плохого. должна быть какая-то проблема в ваших системных требованиях для запуска этой программы. –