Вопрос

Как титул говорит, что я получаю XAMLPARSEException, когда я пытаюсь запустить приложение.Я только начал изучать XAML и в данный момент после учета книги под названием «Windows Phone 8 Game Development» здесь является исключением, что это дает мне.

system.windows.markap.xamlparseException Hresult= -2146233087. Сообщение= Свойство «System.windows.controls.panel.children» устанавливается более одного раза.[Строка: 53 позиции: 74] Source= System.Windows. Linenumber= 53. Синсопозиция= 74. Трассировки стека: На System.Windows.Application.LoadComponent (Компонент объектов, URI Resourcelocator) В Spaceaim3d.views.menupage.initializecomponent () В Spaceaim3d.views.menupage..ctor () Innerexception:

Вот мой код

 public partial class MenuPage : PhoneApplicationPage
{
    private Dictionary<String, String> m_urls = new Dictionary<string, string>();

    public MenuPage()
    {
        InitializeComponent();
        m_urls["play"] = "/Views/GamePage.xaml";
        m_urls["ranks"] = "/Views/RanksPage.xaml";
        m_urls["map"] = "/Views/MapPage.xaml";
        m_urls["world"] = "/Views/WorldPage.xaml";
        m_urls["help"] = "/Views/HelpPage.xaml";
        m_urls["web"] = "/Views/WebPage.xaml";
        m_urls["settings"] = "/Views/SettingsPage.xaml";
    }

    //This is a common event handler used by all entities on menu page
    private void BrdPage_Tap(object sender, GestureEventArgs e)
    {
        //To get the tag name we case the sender object and get the tag as a string
        String page = ((Border)sender).Tag as String;
        NavigationService.Navigate(new Uri(m_urls[page], UriKind.Relative));
    }
}
.

А вот мой код xaml

    <phone:PhoneApplicationPage
    x:Class="SpaceAim3D.Views.MenuPage"
    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}"
    SupportedOrientations="Landscape" Orientation="Landscape"
    mc:Ignorable="d"
    shell:SystemTray.IsVisible="True">

    <phone:PhoneApplicationPage.Resources>
        <Style TargetType="Border">
            <Setter Property="CornerRadius" Value="125" />
            <Setter Property="Background">
                <Setter.Value>
                    <ImageBrush ImageSource="/Assets/asteroid.png" />
                </Setter.Value>
            </Setter>
        </Style>

        <Style TargetType="TextBlock" x:Key="ButtonText">
            <Setter Property="FontSize" Value="40"/>
            <Setter Property="FontWeight" Value="Bold" />
            <Setter Property="Foreground" Value="Black" />
            <Setter Property="VerticalAlignment" Value="Center"/>
            <Setter Property="HorizontalAlignment" Value="Center" />
        </Style>

    </phone:PhoneApplicationPage.Resources>

    <Grid>
        <Grid.ColumnDefinitions>
            <ColumnDefinition />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="*" />
        </Grid.RowDefinitions>
        <TextBlock Grid.Row="0" Grid.Column="0"
                   Style="{StaticResource PhoneTextTitle1Style}">
                   Space Aim <Bold>3D</Bold>
        </TextBlock>

        <Grid.Background>
            <ImageBrush ImageSource="/Assets/background.png" />
        </Grid.Background>

        <Border Grid.Row="1" Margin="10,5,536,194" Tap="BrdPage_Tap" Tag="play">
            <TextBlock Style="{StaticResource ButtonText}" Text="PLAY!"/>
        </Border>
        <Border Margin="255,74,291,221" Grid.RowSpan="2" Tap="BrdPage_Tap" Tag="ranks">
            <TextBlock Style="{StaticResource ButtonText}" Text="RANKS!" Margin="12,66,10,66" Width="160"/>
        </Border>
        <Border Grid.Row="1" Margin="12,162,534,37" Tap="BrdPage_Tap" Tag="map">
            <TextBlock Style="{StaticResource ButtonText}" Text="MAP"/>
        </Border>
        <Border Grid.Row="1" Margin="238,189,308,10" Tap="BrdPage_Tap" Tag="world">
            <TextBlock Style="{StaticResource ButtonText}" Text="WORLD"/>
        </Border>
        <Border Grid.Row="1" Margin="420,76,126,123" Tap="BrdPage_Tap" Tag="web">
            <TextBlock Style="{StaticResource ButtonText}" Text="WEB"/>
        </Border>
        <Border Grid.Row="1" Margin="556,148,-10,51" Tap="BrdPage_Tap" Tag="help">
            <TextBlock Style="{StaticResource ButtonText}" Text="HELP"/>
        </Border>
        <Border Margin="503,54,12,241" Grid.RowSpan="2" Tap="BrdPage_Tap" Tag="settings">
            <TextBlock Style="{StaticResource ButtonText}" Text="SETTINGS"/>
        </Border>
    </Grid>
</phone:PhoneApplicationPage>
.

Это было полезно?

Решение

Я переместил весь код XAML с границами над Gridgebackground, и он работал

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top