private void chart1_MouseMove(object sender, MouseEventArgs e) { var pos = e.Location; if (_prevPosition.HasValue && pos == _prevPosition.Value) { return; } _tooltip.RemoveAll(); _prevPosition = pos; var results = chrtUren.HitTest(pos.X, pos.Y, false, ChartElementType.DataPoint); foreach (var result in results) { if (result.ChartElementType != ChartElementType.DataPoint) { continue; } var prop = result.Object as DataPoint; if (prop == null || chrtUren.Series[1].Points.Contains(prop)) { continue; } var pointXPixel = result.ChartArea.AxisX.ValueToPixelPosition(prop.XValue); var pointYPixel = result.ChartArea.AxisY.ValueToPixelPosition(prop.YValues[0]); if (Math.Abs(pos.X - pointXPixel) < 2 && Math.Abs(pos.Y - pointYPixel) < 2) { _tooltip.Show(StringLayer.GetToolTip(prop), chrtUren, pos.X, pos.Y - 15); } } }
private void SetForm() { chrtUren.Enabled = grpTotalen.Enabled = grpOverzicht.Enabled = Data.IsConnected && !Data.DbEmpty; grpKlokken.Enabled = Data.IsConnected; btnClockIn.Enabled = !Data.IsLoggedIn(); btnClockOut.Enabled = !btnClockIn.Enabled; var reg = Data.Last(); if (reg == null) { return; } SetBtnGenerate(); ucWeek.Init(); lblOnline.Text = StringLayer.GetLblOnlineString(reg); lblUrenWeek.Text = Registratie.TotalDuration(Data.GetRegsForWeek(DateTime.Now)) + "/" + Contract.Uren; lblUrenTotaal.Text = Registratie.TotalDuration(Data.All()); lblUrenDiff.Text = Registratie.Difference(Data.All()); lblUrenDiff.ForeColor = lblUrenDiff.Text.StartsWith("-") ? Color.Red : Color.Green; chrtUren.Series[0] = GraphLayer.GetSeries(GraphLayer.WorkedHours); }