2010-04-12 12 views
15

Wir arbeiten an einer Windows Phone 7-Prototypanwendung und benötigen ein Grafik-/Diagrammsteuerelement, mit dem wir arbeiten können. Wir haben uns die Silverlight Toolkit angesehen, die einige Steuerelemente hat, die aussehen, als würden sie großartig funktionieren. Wir können das jedoch nicht zur Arbeit bringen. Wenn wir dem XAML aus diesem Toolkit ein Steuerelement hinzufügen, wird beim Versuch, das XAML zur Laufzeit zu laden, eine Ausnahme ausgelöst, obwohl es im Designer zu funktionieren scheint. Ich denke, dass es einige Abhängigkeiten gibt, die das Telefon nicht unterstützt.Windows Phone 7 Diagramm-/Grafiksteuerelemente

Kann jemand das Problem beheben oder wissen, die Software zu chartern, die auf Windows Phone 7 funktioniert?

Hier ist ein Beispiel für Code, der nicht funktioniert. Wir haben die 4.0 Beta von Silverlight Toolkit heruntergeladen und installiert. Die DLL wurde als Referenz hinzugefügt. Hinzugefügt dies den Namensraum zu importieren:

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

dann diese hinzugefügt, um eine Grafik zu machen:

<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> 

der Designer zeigt die perfekt Torte, aber wenn ich zu kompilieren versuchen und implementieren es eine Ausnahme auslöst sagen, dass Es kann die MainPage.xaml nicht finden. Das führt mich zu glauben, dass MainPage.xaml nicht richtig compilign (nicht sicher, wie ich noch ein Neuling in Silverlight bin)

Hier ist die Ausnahme:

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

auf dieser Linie:

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

Antwort

3

Sie können sich wahrscheinlich einige der Dinge, die Silverlight-Toolkit bereitgestellt wiederverwenden, die Open-Source ist:
http://silverlight.codeplex.com/Wikipage

Sie müssen möglicherweise einige Sachen gegen die Win Phone APIs neu kompilieren, aber es sollte funktionieren :-)

+0

+1, oder ein wenig Zeit, die ich sicher, dass das Toolkit bin gegeben Team umgehen, dass für Sie tun. – AnthonyWJones

+0

Ich habe das mit dem WrapPanel versucht, bevor ich diese Frage gepostet habe, während ich mit einigen anderen Dingen herumhantiert habe. Aber es hat nicht funktioniert. Aber ich werde es nochmal mit den Charts versuchen, die wir dafür brauchen, und wieder posten und euch wissen lassen, wie es funktioniert. Danke – Joel

+0

Leider kann ich es nicht kompilieren und mit dem Windows Phone 7 SDK ausführen. Vielleicht bin ich es nur, aber ich habe den Eindruck, dass es ohne die Aktualisierung des Codes nicht möglich ist. – Joel

1

Um mehr herumspielen, konnte ich tatsächlich Visifire zum Arbeiten bekommen. Musste nur suchen und den Verweis auf System.Windows.Browser hinzufügen. Ich weiß nicht, ob dies der beste Weg ist, um es zum Laufen zu bringen. Aber es wird reichen, bis das Silverlight Toolkit aktualisiert wird.

1

Nur ein kurzer Stecker für meine eigene Grafiksteuerung, die ich vor kurzem auf Open Source freigegeben habe:

Check it out, es skaliert, um Hunderttausende von Punkten und reagiert auf zuziehen, zoomen, übersetzen, und tippen Sie Gesten:

http://touchgraphwp7.codeplex.com/

2

Wenn Sie große Charting auf WP7 suchen, schlage ich vor Visifire. Beachten Sie, dass es ein kommerzielles Angebot ist. Hat auch Gestenunterstützung! Ich habe sehr wenige Charting-Anbieter gesehen, die das Charting für den Mobile-Form-Faktor optimiert haben, wie diese Leute es tun.

Sie können versuchen MS Toolkit, wenn Sie nach kostenlosen Basisdiagrammen suchen.