2014-11-07 48 views
0

我想使用Windows Phone 8.1的WinRT XAML工具包顯示Line系列我有以下代碼,但屏幕上沒有顯示任何內容:(我正在使用MVVM Light實現MVVM ) Website.xamlWinRT XAML toolkit Line系列在Windows Phone 8.1上無法正常工作

<Grid Grid.Row="0" Background="Black" Margin="20,20,10,10"> 
     <charting:LineSeries x:Name="LineSeries" Height="250" Width="320" ItemsSource={Binding DataPoints} IndependentValueBinding="{Binding X}" DependentValueBinding="{Binding Y}"> 

     </charting:LineSeries> 
    </Grid> 

在相應視圖模型我有

public class WebsiteViewModel:ViewModelBase 
    { 
      private List<DataPoint> _datapoints; 
      public List<DataPoint> DataPoints 
      { 
       get 
       { 
        return _datapoints; 
       } 
       set 
       { 
        if(_datapoints!=value) 
        { 
          _datapoints=value; 
          RaisePropertyChanged("DataPoints"); 
        } 
       } 
     } 

     public WebsiteViewModel() 
     { 
       if(IsInDesignMode) 
       { 
         DataPoint p1=new DataPoint(){X="ABC",Y=21.23}; 
         DataPoint p2=new DataPoint(){X="XYZ",Y=34.56}; 
         DataPoints=new List<DataPoint>(); 
         DataPoints.Add(p1); 
         DataPoints.Add(p2); 
       } 
     } 
    } 

而數據點類定義如下:

public class DataPoint:ObservableObject 
{ 
    private string _x; 
    public string X 
    { 
     get 
     { 
      return _x; 
     } 
     set 
     { 
      if(_x!=value) 
      { 
       _x = value; 
       RaisePropertyChanged("X"); 
      } 
     } 
    } 

    private double _y; 

    public double Y 
    { 
     get 
     { 
      return _y; 
     } 
     set 
     { 
      if(_y!=value) 
      { 
       _y = value; 
       RaisePropertyChanged("Y"); 
      } 
     } 
    } 

} 

但我在設計時看不到任何數據。我使用ViewModelLocator屬性在XAML中設置了DataContext。我的代碼有問題嗎? WinRTXAML工具包是否可以與WP 8.1一起使用?如果沒有,任何人都可以指向WP 8.1的其他開源圖表庫嗎?我擡頭看了Sparrow,但它只是與WP8兼容。

+0

它在運行時是否工作?這些控件不支持設計時間,其中大多數在設計視圖中可能表現不佳。 – 2014-11-07 03:17:54

+0

感謝您的信息。我設法讓它在代碼隱藏的運行時工作。在XAML中綁定它仍然有問題。我是否需要在XAML中指定'IndependentValueBinding'屬性或'IndependentValuePath'屬性? – Sridhar 2014-11-07 04:02:21

+0

對不起,我不得不嘗試自我調試。 – 2014-11-07 08:36:23

回答

0

我得到這個博客 它完美對我windowsRT電話8.1 XAML http://eren.ws/2013/10/15/using-graphs-and-charts-in-windows-store-apps-boredom-challenge-day-11/ 你的XAML應該是:

xmlns:charting="using:WinRTXamlToolkit.Controls.DataVisualization.Charting" 
xmlns:Series="using:WinRTXamlToolkit.Controls.DataVisualization.Charting" 
xmlns:datavis="using:WinRTXamlToolkit.Controls.DataVisualization" 

<Grid Grid.Row="0" Background="Black" Margin="20,20,10,10"> 
    <charting:Chart x:Name="LineSeries"> 
       <charting:Chart.Series> 
        <Series:LineSeries IndependentValuePath="{Binding X}" DependentValuePath="{Binding Y}"> 

        </Series:LineSeries> 
       </charting:Chart.Series> 
      </charting:Chart> 
</Grid> 

裏面的代碼

using WinRTXamlToolkit.Controls.DataVisualization.Charting; 
//something like this, your listdata 
(LineSeries.Series[0] as LineSeries).ItemsSource = DataPoints; 

它仍然越野車也是,在我如果圖表在調試時顯示,但是包含圖表的頁面在我釋放後無法導航,

我會在解決問題後更新我的答案,或者也可以按照以下主題進行操作:http://goo.gl/GyCSxg

相關問題