Ошибка c PictureBox в UserControl
Использую UserControl, который содержит PictureBox. При добавлении UserControl на форму появляется ошибка представленная на картинке.При этом изображение на PictureBox рисуется правильно т.е. как бы все работает как нужно. Но ошибка не исчезает. В чем может быть причина ошибки?
Код формы:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.IO;
namespace WindowsFormsApplication18
{
public partial class Form2 : Form
{
public Form2(int nn)
{
InitializeComponent();
y = new double[nn];
n = nn;
x = new double[nn];
}
public int n;
public double[] y;
public double f_d;
double[] x;
private void Form2_Load(object sender, EventArgs e)
{
userControl11.Length = n;
for (int i = 0; i < n; i++)
{
userControl11.x[i] = i / f_d;
userControl11.y[i] = y[i];
}
}
private void button1_Click(object sender, EventArgs e)
{
Close();
}
private void userControl11_Load(object sender, EventArgs e)
{
}
}
}
Код UserControl:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication18
{
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
double x_max, x_min, y_max, y_min, x_0_pix, y_0_pix, y_1, x_1_pix, y_1_pix;
public double[] x, y;
int length;
public int Length
{
set
{
length = value;
y = new double[length];
x = new double[length];
}
}
private void pictureBox1_Paint(object sender, PaintEventArgs e)
{
int xform = pictureBox1.Location.X;
int width = pictureBox1.Size.Width;
int height = pictureBox1.Size.Height;
int i;
double k, d;
y_max = y_min = y[0];
x_min = x[0];
for (i = 1; i < length; i++)
{
if (y[i] > y_max) y_max = y[i];
if (y[i] < y_min) y_min = y[i];
x_max = x[i];
}
d = width / (x_max - x_min);
k = -height / (y_max - y_min);
y_0_pix = k * (y[0] - y_min) + height;
x_0_pix = 0;
Pen blackPen = new Pen(Color.Black, 2);
//построение
for (i = 1; i < length; i++)
{
y_1 = -y[i];
y_1_pix = k * (y[i] - y_min) + height;
x_1_pix = d * (x[i] - x_min) - 1;
e.Graphics.DrawLine(blackPen, (float)x_0_pix, (float)y_0_pix, (float)x_1_pix, (float)y_1_pix);
x_0_pix = x_1_pix; y_0_pix = y_1_pix;
}
}
private void pictureBox1_Click(object sender, EventArgs e)
{
}
}
}
В чем может быть причина ошибки?