private void MouseEvent(Point p) { var col = GetColorByPos((int)p.X, (int)p.Y, (int)ActualWidth, ColorCollection.ToArray()); if (!col.Equals(SelectedColor)) { SelectedColor = col; } }
protected override void OnRender(DrawingContext drawingContext) { base.OnRender(drawingContext); var colorArray = ColorCollection.ToArray(); for (var i = 0; i < ActualWidth; i++) { var upperPen = new Pen(new SolidColorBrush(GetColorByPos(i, 0, (int)ActualWidth, colorArray)), 1); drawingContext.DrawLine(upperPen, new Point(i, 0), new Point(i, (int)ActualHeight / 2)); var lowerPen = new Pen( new SolidColorBrush(colorArray[GetColorNumber(i, (int)ActualWidth, colorArray)]), 1); drawingContext.DrawLine(lowerPen, new Point(i, (int)ActualHeight / 2), new Point(i, (int)ActualHeight)); } }