Le marqueur de mouvement du curseur LightningChart ne fonctionne pas correctement

Problème: le marqueur pour le mouvement du curseur ne fonctionne pas

Bien que ce soit une tâche très simple, j'ai un morceau de code qui ne fonctionne pas correctement.

Après avoir déplacé le marqueur de croix rouge, pouvez-vous m'aider à forcer le marqueur à la bonne position?

Après avoir déplacé le marqueur, j'appelle "SolveNearestSampleByCoord" pour obtenir l'échantillon le plus récent: la valeur est correcte. Comme vous pouvez le voir dans la zone de texte.
Mais le curseur reste à l'emplacement de la souris au lieu de se déplacer vers l'emplacement souhaité.

C'est le code simple que j'utilise.
private void Cl1_MovedByMouse (expéditeur de l'objet, MouseEventArgs e)
{
SeriesEventMarker marker = (SeriesEventMarker) sender;
selectedCursor = marker.Tag.ToString ();
cursorSelected = true;

        double dXValue, dYValue;
        int iNearestIndex;
        int a = 0;
        m_chart.BeginUpdate();
        if (m_chart.ViewXY.SampleDataSeries[0].SolveNearestSampleByCoord(e.X, e.Y, out dXValue, out dYValue, out iNearestIndex)) ;
        {
            marker.VerticalPosition = SeriesEventMarkerVerticalPosition.AtYValue;
            marker.HorizontalPosition = SeriesEventMarkerHorizontalPosition.AtXValue;               
            marker.Symbol.Shape = Shape.CrossAim;
            marker.XValue = dXValue;
            marker.YValue = dYValue;
            XXX = dXValue;
            YYY = dYValue;

            txtX.Text = XXX.ToString(); // Just to make sure it is the right values
            txtY.Text = YYY.ToString();
        }
        m_chart.EndUpdate(); ;

}

Le marqueur de mouvement du curseur LightningChart ne fonctionne pas correctement
Réponse: Si le marqueur pour le mouvement du curseur n'est pas valide
, un gestionnaire MouseUp doit être ajouté après le gestionnaire MovedbyMouse pour forcer le marqueur à être placé.
private void Cl1_MouseUp (expéditeur de l'objet, MouseEventArgs e)
{
SeriesEventMarker marker = (SeriesEventMarker) sender;
selectedCursor = marker.Tag.ToString ();
cursorSelected = true;
{
m_chart.BeginUpdate ();
marker.VerticalPositionticalMarker = SeriesYEventalMarker
. HorizontalPosition = SeriesEventMarkerHorizontalPosition.AtXValue;
marker.XValue = XXX;
marker.YValue = YYY;
m_chart.EndUpdate () ;;
m_chart.Refresh ();
}
}
Si vous avez des questions à ce sujet, veuillez contacter le service client pour plus d'informations.

Si vous souhaitez acheter une licence authentique pour LightningChart, ou pour plus d'informations sur le produit, veuillez cliquer sur [Consulter le service client en ligne]

Je suppose que tu aimes

Origine blog.51cto.com/15078157/2621471
conseillé
Classement