Pergunta

Como o título diz, recebo uma XamlParseException quando tento executar o aplicativo.Acabei de começar a aprender xaml e atualmente estou seguindo um tutorial de um livro chamado Desenvolvimento de jogos para Windows Phone 8, aqui é a exceção que ele está me dando.

System.windows.markup.xamlparseException ocorreu hresult = -2146233087 Mensagem = a propriedade 'System.windows.controls.panel.children' é definida mais de uma vez.[Linha:53 Posição:74] Fonte = System.Windows LineNumber = 53 LinePosition = 74 Stacktrace:em System.Windows.Application.LoadComponent(componente Object, Uri resourceLocator) em SpaceAim3D.Views.MenuPage.InitializeComponent() em SpaceAim3D.Views.MenuPage.. ctor() InnerException:

aqui está meu código

 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));
    }
}

e aqui está meu código 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>
Foi útil?

Solução

Mudei todo o código xaml com tags de borda acima do grid.background e funcionou

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top