SciChart: как переместить график с помощью RenderTransform?
Я пытаюсь переместить вертикальную линию, которая представляет время вперед.
Вот код для создания этой вертикальной линии:
XAML:
<s:SciChartSurface.RenderableSeries>
<s:FastLineRenderableSeries x:Name="lineSeries" SeriesColor="Red" />
<s:FastLineRenderableSeries x:Name="verticalTimeLine"SeriesColor="Green"/>
</s:SciChartSurface.RenderableSeries>
Строка инициализируется в следующем коде (C#):
var verticalLineTimeSeries = new XyDataSeries<float, float>();
verticalLineTimeSeries.Append(0.0f, 0.0f);
verticalLineTimeSeries.Append(0.0f, 10.0f);
verticalTimeLine.DataSeries = verticalLineTimeSeries;
И это код, в котором я сделал тест с RenderTransform, чтобы переместить временную шкалу:
TranslateTransform translateTransform = new TranslateTransform();
translateTransform.X = 400;
translateTransform.Y = 0;
verticalTimeLine.RenderTransform = translateTransform;
verticalTimeLine.UpdateLayout();
Проблема в том, что линия вообще не двигается. Что я делаю неправильно? Заранее спасибо.
1 ответ
Ну, наконец-то я смог решить свою проблему с помощью аннотаций. Я собираюсь опубликовать код в случае, если у кого-то есть аналогичная проблема
Сначала на части Xaml:
На Ресурсах UserControl мы устанавливаем простой стиль, зеленый цвет и значение сгущения 2:
<UserControl.Resources>
<Style x:Key="AnnotationStyle"TargetType=" s:VerticalLineAnnotation">
<Setter Property="Stroke">
<Setter.Value>
<SolidColorBrush Color="Green"/>
</Setter.Value>
</Setter>
<Setter Property="StrokeThickness" Value="2"/>
</Style>
</UserControl.Resources>
Аннотации:
<s:SciChartSurface.Annotations>
<s:VerticalLineAnnotation X1="0" x:Name="annotation" Style="{StaticResource AnnotationStyle}" />
</s:SciChartSurface.Annotations>
И это код для проверки его движения:
annotation.X1 = 5.5;