Доброго времени суток! Возможно, для многих вопрос покажется глупым, но ответ мне необходим. В ниже приведенном коде существует массив _textAreas. Проблема в том, что после выполнения метода _pictureBox_Paint, данный массив обнуляется, а он мне нужен в дальнейшем. Как этого избежать?
public Bitmap Bitmap { get => (Bitmap)_pictureBox.Image; }
private readonly PictureBox _pictureBox;
private List<Rectangle> _textAreas;
public PictureBoxControl(PictureBox pictureBox)
{
_pictureBox = pictureBox;
_textAreas = new List<Rectangle>();
_pictureBox.Paint += _pictureBox_Paint;
}
private void _pictureBox_Paint(object sender, PaintEventArgs e)
{
foreach (var textAreaRect in _textAreas)
e.Graphics.DrawRectangle(new Pen(new SolidBrush(Color.Red), 2), textAreaRect);
}
public static class IEnumerableExtensions
{
public static void ForEach<T>(this IEnumerable<T> enumerable, Action<T> onItem)
{
foreach (var item in enumerable)
onItem(item);
}
}