2011-04-13 6 views
0

J'ai un graphique Silverlight qui a un événement lorsque l'utilisateur clique sur l'un des éléments de la série. Le même fermera le panneau qui contient le graphique et ouvrira un nouveau panneau avec une grille de données de données supplémentaires pour cet élément de série. Une fois terminé avec ces données, il y a un bouton de retour qui a fermé le panneau avec la grille de données et montre à nouveau le panneau avec le tableau.Silverlight Chart Control

Mon problème est que lorsque l'utilisateur est montré le graphique, il conserve l'élément de série sélectionné d'origine. Existe-t-il un moyen de réinitialiser ceci afin que l'utilisateur puisse recliquer sur le même élément s'il le souhaite.

Répondre

1

Si vous souhaitez effacer la sélection, vous pouvez définir la propriété SelectedItem sur null.

Tableau simple par exemple:

<Button Content="Clear" Click="Button_Click" HorizontalAlignment="Center" /> 
    <chart:Chart x:Name="chart" Grid.Row="1"> 
     <chart:Chart.Series> 
      <chart:ColumnSeries IsSelectionEnabled="True" ItemsSource="{Binding}" IndependentValuePath="Year" DependentValuePath="Value" /> 
     </chart:Chart.Series> 
    </chart:Chart> 

Le code qui efface la sélection:

private void Button_Click(object sender, RoutedEventArgs e) 
{ 
    var cs = (DataPointSeries)this.chart.Series[0]; 
    cs.SelectedItem = null; 
} 

J'utilise l'index 0 parce que je sais que la position de la série et il est la première série de le tableau.

Je pense que votre graphique a aussi des séries uniques.

+0

Excellent c'est exactement ce que je cherchais. Je vous remercie – Bruie