2017-02-21 8 views

Antwort

1

Sie sollten DefaultTrackerTemplate gesetzt. Hier ein kleines Beispiel, das dir den Weg zeigt:

<Grid> 
    <oxy:Plot Title="AAA"> 
     <oxy:Plot.Axes> 
      <oxy:LinearAxis Position="Left" Title="Left: " /> 
      <oxy:LinearAxis Position="Bottom" Title="Bottom: " /> 
     </oxy:Plot.Axes> 
     <oxy:Plot.Series> 
      <oxy:LineSeries x:Name="ls" ItemsSource="{Binding Points}"/> 
     </oxy:Plot.Series> 
     <oxy:Plot.DefaultTrackerTemplate> 
      <ControlTemplate> 
       <oxy:TrackerControl Position="{Binding Position}" 
           BorderThickness="1"> 
        <oxy:TrackerControl.Content> 
         <StackPanel > 
          <DockPanel> 
           <TextBlock Text="{Binding XAxis.Title}" Foreground="Red" /> 
           <TextBlock DockPanel.Dock="Right" Text="{Binding DataPoint.X}" Foreground="Red" /> 
          </DockPanel> 
          <DockPanel> 
           <TextBlock Text="{Binding YAxis.Title}" Foreground="Green" /> 
           <TextBlock DockPanel.Dock="Right" Text="{Binding DataPoint.Y}" Foreground="Green" 
             FontWeight="Bold" /> 
          </DockPanel> 
         </StackPanel> 
        </oxy:TrackerControl.Content> 
       </oxy:TrackerControl> 
      </ControlTemplate> 
     </oxy:Plot.DefaultTrackerTemplate> 
    </oxy:Plot> 
</Grid> 

Hoffe es hilft.

+0

Dies sollte funktionieren, aber es überschreibt die Standardvorlage. Ich mag eigentlich, dass die Achsentitel wie in der Standardvorlage enthalten sind (der Bereich, den ich im Bild in meiner Frage gelöscht habe). – Felix

+0

Sie sollten die Text-Eigenschaft binden. Siehe die Antwort. Ich habe es aktualisiert. – Ron

1

Ich möchte meine eigene Frage basierend auf Ramin's Hinweis zu mir beantworten.

ich in den Quellcode grub ein wenig, und fand heraus, ein TrackerFormatString ist, die ich ändern kann:

<oxy:LineSeries TrackerFormatString="{}{0}&#x0a;{1}: {2:0.0}&#x0a;{3}: {4:0.0}"/> 

Bitte beachten Sie die &#x0a; in meinem Code, dass, wie ein Newline-Zeichen eingegeben wird in XAML .

Bitte beachten Sie auch die {} am Anfang, das ist Art von Escape-Zeichen in XAML.

wenn in C#, es ist nur:

{0}\n{1}: {2:0.0}\n{3}: {4:0.0} 
+0

Das ist auch nett. – Ron

+0

mehr Diskussion unter http://discussion.oxyplot.org/forums/1-general/topics/583-trackerformatstring-question/ – Felix