簡體   English   中英

使用WPF工具包的簡單條形圖?

[英]Simple Bar Chart with WPF Toolkit?

我嘗試按照此示例使用MVVM制作簡單的條形圖:

代碼項目MVVM圖表

但是無法顯示任何圖表。 這是我的視圖模型,它公開了KeyValuePair ObservableCollection

 private ObservableCollection<KeyValuePair<string, int>> _ChartParametersPairedObservableList;
    public ObservableCollection<KeyValuePair<string, int>> ChartParametersPairedObservableList
    {
        get { return _ChartParametersPairedObservableList; }
        set
        {
            _ChartParametersPairedObservableList = value;
            OnPropertyChanged("ChartParametersPairedObservableList");
        }
    }

並從另一個ObservableCollection實例化/填充集合:

private void GetChartParametersAndBuildKeyValuePairs()
    {
        ChartParametersObservableList = new ObservableCollection<ChartParameters>(IsesService.GetChartParameters(Country, ArticleType));
        ChartParametersPairedObservableList = new ObservableCollection<KeyValuePair<string, int>>();

        foreach (var item in ChartParametersObservableList)
        {              
            ChartParametersPairedObservableList.Add(new KeyValuePair<string, int>(item.operator_name_abrv, item.countAll));
        }
    }

該集合工作正常。 我知道屬性已更改,因為我可以從視圖中將DataGrid綁定到集合,沒有問題。 問題是當我嘗試綁定到圖表時。

這是圖表的Xaml視圖:

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

<DVC:Chart Canvas.Top="80" Canvas.Left="10" ItemsSource="{Binding ChartParametersPairedObservableList}" Width="400" Height="250">
            <DVC:Chart.Series>
                <DVC:BarSeries ItemsSource="{Binding ChartParametersPairedObservableList}"
                               IndependentValueBinding="{Binding Path=Key}" 
                               DependentValueBinding="{Binding Path=Value}">
                    </DVC:BarSeries>
            </DVC:Chart.Series>
            </DVC:Chart>

不幸的是,我在運行時沒有任何數據輸出到圖表中。 我在輸出窗口中遇到綁定錯誤。 無法綁定到值和鍵:

BindingExpression path error: 'Key' property not found on 'object'
BindingExpression path error: 'Value' property not found on 'object'

我究竟做錯了什么?

通過使用Windows 8,WPF,Silverlight的現代UI(地鐵)圖表來解決此問題。

現代圖

出色的庫和現代外觀,不再需要Windows 95樣式!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM