private void PixelMouseDown(object sender, MouseButtonEventArgs e) { var clickedPixel = (Rectangle)sender; var name = clickedPixel.Name; if (name.Length <= 5) { return; } int pixelNumber; if (!int.TryParse(name.Substring(5), out pixelNumber)) { return; } pixelNumber--; PixelClicked?.Invoke(pixelNumber, e); _lastPixelMouseMovedOver = clickedPixel; }
private void LedDisplay_OnMouseMove(object sender, MouseEventArgs e) { if (e.LeftButton != MouseButtonState.Pressed) { return; } var pixel = Mouse.DirectlyOver as Rectangle; if ((pixel == null) || (pixel.Name.Length <= 4) || (pixel.Name.Substring(0, 5) != "Pixel") || Equals(_lastPixelMouseMovedOver, pixel)) { return; } _lastPixelMouseMovedOver = pixel; int pixelNumber; if (!int.TryParse(pixel.Name.Substring(5), out pixelNumber)) { return; } pixelNumber--; PixelClicked?.Invoke(pixelNumber, EventArgs.Empty); }