2014-02-14 5 views
0

Эта проблема была первоначально отправлена ​​here. Хотя решение принятое OP, я все еще не могу понять, что вызвало исключение. Я сделал несколько дополнительных тестов и не смог.XamlParseException при назначении собственности

Код очень прост - Windows Phone App только с содержанием XAML:

<phone:PhoneApplicationPage.Resources> 
    <Image x:Key="IButton" Source="Resources/firstImage.png"/> 
</phone:PhoneApplicationPage.Resources> 

<Grid x:Name="LayoutRoot" Background="Transparent"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="1*"/> 
     <RowDefinition Height="1*"/> 
    </Grid.RowDefinitions> 
    <Button x:Name="first" Content="{StaticResource IButton}" VerticalAlignment="Center" Grid.Row="0"/> 
    <Button x:Name="second" VerticalAlignment="Center" Grid.Row="1"> 
     <Image Source="Resources/firstImage.png"/> 
    </Button> 
</Grid> 

На первый взгляд, все выглядит нормально, VS дизайнер показывает должным образом две кнопки с изображениями внутри. Когда я пытаюсь deply приложение я получаю XamlParseException:

Не удалось присвоить свойству 'System.Windows.Controls.ContentControl.Content.

Проблема касается первой кнопки - второй работает без проблем

Довольно странно. Я пробовал изменить проект сборки (ресурс/контент), проект очистки, без успеха.

Напротив, очень похожее приложение WPF работает без проблем. Вы просто нажмите Выполнить и две кнопки:

<Window.Resources> 
    <Image x:Key="IButton" Source="Resources/firstImage.png"/> 
</Window.Resources> 
<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="1*"/> 
     <RowDefinition Height="1*"/> 
    </Grid.RowDefinitions> 
    <Button x:Name="first" Content="{StaticResource IButton}" VerticalAlignment="Center" Grid.Row="0"/> 
    <Button x:Name="second" VerticalAlignment="Center" Grid.Row="1"> 
     <Image Source="Resources/firstImage.png"/> 
    </Button> 
</Grid> 

ли кто-нибудь представление о том, что может быть не так? Оба приложения (WP/WPF) вы can get here.

ответ

0

Может быть, это разница

<Button x:Name="second" VerticalAlignment="Center" Grid.Row="1"> 
<Button.Content> 
     <Image Source="Resources/firstImage.png"/> 
</Button.Content> 
</Button> 

Button.Content Tag является дополнительной здесь.

Также здесь должно быть установлено содержание сборки изображения.

Это работает в моем случае по крайней мере.

+0

Это не проблема. Вторая кнопка работает без проблем. Ваш код будет работать. Проблема касается первой кнопки и того, почему она не работает. Вторая кнопка - это только проверка, если файл изображения существует и так далее. – Romasz

Смежные вопросы