¿Cuál es la forma correcta de dibujar una línea con el mouse en C #?
Este es mi código de dibujo para dibujar una línea personalizada con el mouse en un Gráfico. ¿Pueden ayudarme a hacerlo de la manera adecuada?
namespace Grafi
{
public partial class Form1 : Form
{
bool isDrawing = false;
Point prevPoint;
public Form1()
{
InitializeComponent();
}
private void chartTemperature_MouseDown(object sender, MouseEventArgs e)
{
isDrawing = true;
prevPoint = e.Location;
}
private void chartTemperature_MouseMove(object sender, MouseEventArgs e)
{
Pen p = new Pen(Color.Red, 2);
if (isDrawing)
{
Graphics g = chartTemperature.CreateGraphics();
g.DrawLine(p, prevPoint, e.Location);
prevPoint = e.Location;
numOfMouseEvents = 0;
}
p.Dispose();
}
private void chartTemperature_MouseUp(object sender, MouseEventArgs e)
{
isDrawing = false;
}
}
}
El problema es que cuando cambio el tamaño de mi línea se desvanece. Desaparece cada vez que se genera el evento onPaint.