2010-04-12 6 views
15

Мы работаем над прототипом Windows Phone 7, и нам нужен элемент управления Graphing/Charting. Мы посмотрели на Silverlight Toolkit, у которого есть некоторые элементы управления, которые выглядят так, как будто они отлично работают. Однако мы не можем заставить это работать. Всякий раз, когда мы добавляем элемент управления XAML из этого инструментария, он генерирует исключение при попытке загрузить XAML во время выполнения, даже если он работает в дизайнере. Я думаю, что это потому, что есть некоторые зависимости, которые телефон фактически не поддерживает.Windows Phone 7 Управление диаграммами/графикой

Кто-нибудь знает, как исправить проблему или узнать о программном обеспечении для построения графиков, которое работает на Windows Phone 7?

Вот пример кода, который не работает. Мы загрузили и установили 4.0 бета Silverlight Toolkit. Добавлена ​​DLL в качестве ссылки. Добавлено в этом импортировать пространство имен:

xmlns:c="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit"` 

затем добавили это сделать диаграмму:

<c:Chart> 
    <c:PieSeries> 
     <c:PieSeries.ItemsSource> 
      <l:IntList> 
       <sys:Int32>23</sys:Int32> 
       <sys:Int32>2</sys:Int32> 
       <sys:Int32>1</sys:Int32> 
       <sys:Int32>34</sys:Int32> 
      </l:IntList> 
     </c:PieSeries.ItemsSource> 
    </c:PieSeries> 
</c:Chart> 

дизайнер показывает пирог прекрасно, однако, когда я пытаюсь скомпилировать и развернуть его бросает исключение, сказав, что он не может найти MainPage.xaml. Это приводит меня к мысли, что MainPage.xaml не compilign правильно (не уверен, так как я еще новичок в Silverlight)

Вот исключение:

System.Windows.Markup.XamlParseException occurred 
    Message=2255 An error has occurred. [Line: 36 Position: 2] 
    LineNumber=36 
    LinePosition=2 
    StackTrace: 
    ... 

на этой линии:

System.Windows.Application.LoadComponent(this, new System.Uri("/Twitpic;component/MainPage.xaml", System.UriKind.Relative)); 

ответ

3

Вы, вероятно, может повторно использовать некоторые из вещей, предоставленных SilverLight инструментария, который является открытым исходным кодом:
http://silverlight.codeplex.com/Wikipage

Возможно, вам придется перекомпилировать некоторые вещи против API-интерфейсов win phone, но он должен работать :-)

+0

+1, или дали немного времени, я уверен, что команда инструментарий будет обходить, чтобы сделать это для вас. – AnthonyWJones

+0

Я пробовал это с WrapPanel, прежде чем публиковать этот вопрос, возившись с некоторыми другими. Но это не сработало. Но я попробую еще раз с диаграммами, которые нам нужны для этого, и снова опубликуйте и сообщите, как это работает. Спасибо – Joel

+0

К сожалению, я не могу скомпилировать его и запустить с помощью Windows Phone 7 SDK. Может быть, это только я, но у меня создается впечатление, что это невозможно без обновления кода. – Joel

1

Играя больше, я действительно смог получить Visifire для работы. Просто нужно было просмотреть и добавить ссылку на System.Windows.Browser. Я не знаю, является ли это лучшим способом заставить его работать. Но это будет сделано до тех пор, пока Silverlight Toolkit не будет обновлен.

1

Просто быстрый штекер для моего собственного управления графом. Я недавно выпустил в открытый исходный код:

Проверьте это, она масштабируется до сот тысяч точек и отвечает ущипнуть, масштабирование, переводить и нажмите жесты:

http://touchgraphwp7.codeplex.com/

2

Если вы ищете большое картографирование на WP7, я предлагаю Visifire. Обратите внимание, что это коммерческое предложение. Поддерживает жест! Я видел очень мало разработчиков схем, которые оптимизировали графику для мобильного форм-фактора, как это делают эти ребята.

Вы можете попробовать MS Toolkit, если вы ищете бесплатные базовые диаграммы.