Ошибка привязки диаграммы WPF - PullRequest
2 голосов
/ 17 июля 2009

У меня проблема с правильной привязкой данных к диаграмме WPF. Когда я устанавливаю ItemsSource, я получаю сообщение об ошибке:

Назначенная зависимая ось не может быть использована. Данные могут не отображаться на предоставленной оси, или для ряда может потребоваться, чтобы они имели начало координат.

oc = new ObservableCollection<Pair>();
heartBeats.ItemsSource = oc;

к паре я сохраняю int и long

XAML:

...
xmlns:charting="clr-namespace:System.Windows.Controls.DataVisualization.Charting;assembly=System.Windows.Controls.DataVisualization.Toolkit" >
<charting:Chart x:Name="ApplicatioChart">
            <charting:Chart.Series>
                <charting:ColumnSeries x:Name="heartBeats" Title="Working Set" 
                 DependentValueBinding="{Binding First}" IndependentValueBinding="{Binding Second}" >

                    <charting:ColumnSeries.IndependentAxis>
                        <charting:CategoryAxis Orientation="X" />
                    </charting:ColumnSeries.IndependentAxis>                    
                    <charting:ColumnSeries.DependentRangeAxis>
                        <charting:LinearAxis  Orientation="Y"  />
                    </charting:ColumnSeries.DependentRangeAxis>

                </charting:ColumnSeries>
            </charting:Chart.Series>
        </charting:Chart>

Пожалуйста, помогите ..: (

Ответы [ 2 ]

2 голосов
/ 07 сентября 2009

Я решил это так:

<charting:Chart Title="Engine Performance" x:Name="ApplicationChart">
    <!-- Power curve -->
    <charting:LineSeries x:Name="heartBeats" 
                    Title="ManagedHeapSize"       
                    IndependentValueBinding="{Binding EventTime}"
                    DependentValueBinding="{Binding ManagedHeapSize}">

        <!-- Vertical axis -->
        <charting:LineSeries.DependentRangeAxis>
            <charting:LinearAxis
                            Orientation="Y"
                            Title="ManagedHeapSize"                                   
                            Interval="10000000" Focusable="True"
                            ShowGridLines="True"/>
        </charting:LineSeries.DependentRangeAxis>
    </charting:LineSeries>                      

    <charting:Chart.Axes>
        <!-- Shared horizontal axis -->
        <charting:LinearAxis
                        Orientation="X"
                        Title="EventTime"
                        Interval="100"
                        ShowGridLines="True"/>
    </charting:Chart.Axes>
</charting:Chart>
0 голосов
/ 17 июля 2009

Не вижу ничего плохого в разметке (за исключением того, что одно и то же свойство связано как с зависимым, так и с независимым значением).

В версии Silverlight это работает нормально, я неиметь версию WPF для игры.

Попробуйте удалить определение для DependentRangeAxis, чтобы увидеть, работает ли оно с заданным по умолчанию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...