如何在panel控件中设置Button控件

来源:百度知道 编辑:UC知道 时间:2024/05/31 06:49:52
我用Button控件取了TextBox控件中的值,设置了1个静态类,将值直接传递给静态类,然后在Panel控件中调用这个值

private void DrawGraphic(Graphics gph)
{
string[] aa =Class1.txtReturn.Split(',').ToString();
Class1.x = Convert.ToSingle(aa[0].Remove(0, 1));
int len = aa[1].Length;
Class1.y = Convert.ToSingle(aa[1].Remove(len - 1));

PointF cPt = new PointF(0, 400);//中心点
PointF Pt = new PointF(Class1.x, Class1.y);//定义1个要输出的点
gph.DrawString("地图", new Font("宋体", 20), Brushes.Blue, new PointF(cPt.X + 200, cPt.X));//图表标题
//画X轴
gph.DrawLine(Pens.Black, cPt.X, cPt.Y, 0, 0);
//画Y轴
gph.DrawLine(Pens.Black, cPt.X, cPt.Y, 600, 400);
//画点
gph.FillEllipse(new SolidBrush(Color.Red), Pt.X, Pt.Y, 3, 3);
//画数值
gp

原因:窗体在进行初始化的时候会激发Paint事件,而此时Class1.txtReturn尚未赋值,即为null,在执行string[] aa =Class1.txtReturn.Split(',').ToString(); 时就会发生空引用异常。
方法:
DrawGraphic(e.Graphics);
改为
if(Class1.txtRetuurn!=null)DrawGraphic(e.Graphics);