Я использую oxyplot с wpf и хочу изменить всплывающее окно, если будет нажата точка данных.
Можно ли изменить? Я видел несколько примеров, которые показывают, как получить точку щелчка, но ничего об изменении стиля.
Благодарю вас
Я использую oxyplot с wpf и хочу изменить всплывающее окно, если будет нажата точка данных.
Можно ли изменить? Я видел несколько примеров, которые показывают, как получить точку щелчка, но ничего об изменении стиля.
Благодарю вас
Всплывающее окно называется Tracker
в исходном коде OxyPlot. Вы можете определить его ControlTemplate в XAML через OxyPlot.Wpf.PlotView.DefaultTrackerTemplate
как:
<oxy:PlotView Model="{Binding SomePlotModel}">
<oxy:PlotView.DefaultTrackerTemplate>
<ControlTemplate>
<!-- Put your content here-->
</ControlTemplate>
</oxy:PlotView.DefaultTrackerTemplate>
</oxy:PlotView>
Если для каждой серии данных требуется отдельный трекер, используйте OxyPlot.Wpf.PlotView.TrackerDefinitions
. Например, если у вас есть LineSeries с TrackerKey="LineSeriesXyzTrackerKey"
, то определяет свой трекер как:
<oxy:PlotView Model="{Binding SomePlotModel}">
<oxy:PlotView.TrackerDefinitions>
<oxy:TrackerDefinition TrackerKey="LineSeriesXyzTrackerKey">
<oxy:TrackerDefinition.TrackerTemplate>
<ControlTemplate>
<!-- Put your content here-->
</ControlTemplate>
</oxy:TrackerDefinition.TrackerTemplate>
<oxy:TrackerDefinition TrackerKey="SomeOtherTrackerKey">
<oxy:TrackerDefinition.TrackerTemplate>
<ControlTemplate>
<!-- Put your content here-->
</ControlTemplate>
</oxy:TrackerDefinition.TrackerTemplate>
</oxy:TrackerDefinition>
</oxy:PlotView.TrackerDefinitions>
DataContext
для ControlTemplate
— это TrackerHitResult
, вы можете посмотреть, какие свойства доступны здесь: https://github.com/oxyplot/oxyplot/blob/master/Source/OxyPlot/PlotController/Manipulators/TrackerHitResult.cs
Некоторые примеры: Как я могу показать точки графика в Oxyplot для линейного графика? http://discussion.oxyplot.org/topics/592-wpf-tracker-multiple-value/