Загрузить Silverlight Canvas как отдельный файл XAML? - PullRequest
0 голосов
/ 01 сентября 2009

Я хочу иметь возможность хранить различные элементы Canvas в отдельных файлах XAML, поэтому, например, они объявлены как:

<canvas x:Class="Item.One" Height="300" Width="400">
...
</canvas>

и еще один такой

<canvas x:Class="Item.Two" Height="300" Width="400">
...
</canvas>

Мне интересно, почему я не могу заставить это работать, когда я пытаюсь загрузить их как классы, я получаю ошибку синтаксического анализатора, я могу сделать это нормально в WPF, но не в Silverlight 3.0, что вы можете сделать, чтобы иметь XAML работать как объекты, а не как ресурсы?


Просто чтобы помочь парсеру, ошибка

AG_E_PARSER_BAD_TYPE

И реальный пример, который не работает:

<Canvas x:Class="Cards.Appointment.ZuneVertical" x:Name="ZuneVertical"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Width="240" Height="320" Background="White">
</Canvas>

В своем коде я хочу сделать это:

Preview.Children.Add(Item.One)

Где Preview - это Сетка в ScrollView, в которую я хочу загрузить XAML, то есть в Canvas, есть различные версии Canvas, которые я хочу загрузить в эту панель предварительного просмотра, каждая из которых представляет собой класс в виде XAML в WPF, но, кажется, не может заставить это работать в Silverlight 3.0 без ошибки синтаксического анализа, попробовал UserControls, но это имеет ту же проблему!

1 Ответ

1 голос
/ 01 сентября 2009

Кажется, это была проблема с пространством имен моего XAML-файла. Я добавил пространство имен приложения, и это решило проблему.

<Canvas x:Class="ZuneCardrintouch.Cards.Appointment.ZuneVertical" />
...