Kann nicht `MouseEventArgs` in `MouseHover-event
Ich bin sicher, dies ist ein straight-forward beantworten, aber ich kann nicht scheinen, um es herauszufinden.
Ich versuche, fügen Sie ein tooltip
mit meinem mousehover
Veranstaltung. Historisch habe ich die mousemove
Ereignis, aber leider bedeutet das tooltip
aktualisiert wird, so schnell wie das Programm es tun können. Ich will einfach nur, es zu zeigen, wenn die Maus steht auf meinem graph.
Das Problem ist, dass ich kann nicht die e.Location
Eigenschaft, da die event-handler verwendet nur EventArgs
, nicht MouseEventArgs
. Gibt es eine Möglichkeit, kann ich dies ändern? Oder vielleicht fügen Sie eine Zeile wie MouseEventArgs mouse = new MouseEventArgs();
(ich bekomme eine Fehlermeldung, die sagen, es braucht mehr Argumente, aber ich weiß nicht, welche).
Jede Hilfe ist willkommen 🙂
private void chSysData_MouseHover(object sender, EventArgs e)
{
//Add tooltip
try
{
int cursorX = Convert.ToInt32(chSysData.ChartAreas[0].AxisX.PixelPositionToValue(e.Location.X));
tipInfo = "System: " + systemVoltage[cursorX].ToString("0.00") + Environment.NewLine + "Current: " + currArray[cursorX].ToString("0.00") + Environment.NewLine;
tooltip.SetToolTip(chSysData, tipInfo);
}
catch (Exception ex)
{
MessageBox.Show("Error: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
}
}
Du musst angemeldet sein, um einen Kommentar abzugeben.
Anzeigen des Cursors.Position-Eigenschaft, um Ihr Diagramm. Ein Beispiel mit einem panel:
Beachten Sie, dass dies sonst nicht anders als mit toolTip1.Show("Hallo", panel1); aber Sie sind wahrscheinlich zu wollen, zwicken Sie den tooltip-position, damit es nicht überlappt, indem Sie den cursor.
Member 'System.Windows.Forms.Cursor.Position.get' cannot be accessed with an instance reference; qualify it with a type name instead
. Ich habe noch nie gesehen es vor. Irgendwelche Vorschläge, während ich versuchen, es herauszufinden?Cursor
. Ich werde weiter Graben um zunächst, bevor ich eine weitere Frage stellen. Ich weiß nicht, wie zu Fragen, es sei denn, ich habe recherchiert, es für mich zuerst. Danke für die Hilfe 🙂