2012-07-03 2 views
0

Я создал диаграмму с использованием инструментария Silverlight 5. Он имеет LinearSeries без указанного параметра ItemsSource (он назначается позже в коде). DateTimeAxis не имеет значения Maximum или Minimum, поскольку я мог бы отображать разные данные в разное время. Однако, независимо от того, что данные для построения, я бы хотел, чтобы точки были разнесены каждые 30 секунд. Указав это в XAML, страница не загружается (в системе заканчивается память). При попытке разного (большего) временного интервала он отлично справляется (с шагом 1 месяц). Похоже, что если данные не представлены на графике, для него требуется интервал в 1 год.Как установить интервал на пустой DateTimeAxis в диаграмме инструментария Silverlight

Это известная проблема? Каков способ справиться с этим, кроме указания Max/Min, а затем избавиться от него, как только будут предоставлены некоторые данные?

Вот мой код:

<toolkit:Chart Title="Live Use"> 
    <toolkit:Chart.Series> 
     <toolkit:LineSeries 
       IndependentValueBinding="{Binding Time}" 
       DependentValueBinding="{Binding Value}" 
       AnimationSequence="Simultaneous" /> 
    </toolkit:Chart.Series> 
    <toolkit:Chart.Axes> 
     <toolkit:DateTimeAxis Orientation="X" Location="Bottom" BorderThickness="2" Title="Time" ShowGridLines="True" IntervalType="Months" Interval="3"/> 
    </toolkit:Chart.Axes> 
</toolkit:Chart> 

ответ

0

Видимо это ошибка в инструментарии графике. Я нашел эту ссылку, которая подтверждает это: http://forums.silverlight.net/t/101287.aspx. Проблема в том, что график по умолчанию имеет диапазон от 1 года. Теперь, если вы попытаетесь установить интервал до 30 секунд, он попытается сгенерировать много ярлыков, и это замедлит его до точки, в которой заканчивается память. Решение состоит в том, чтобы вручную установить диапазон или указать itemsSource до указания интервала на оси.

Надеюсь, это поможет.

Смежные вопросы