日期:2014-05-18  浏览次数:20753 次

问个关于写方法的问题
C# code

        public void Tshuzi(double a, int b)
        {
            switch (a.ToString().Length)
            {
                case 0:
                    e.Graphics.DrawString("十", NormalFont, Brushes.Black, X, Y);
            }
        }


调试的时候发现e找不到,这个我明白,因为e是在private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)这里面用的.
那我要让它不报错,应该在这个方法里添加什么?

------解决方案--------------------
从lz的代码来看函数Tshuzi中只是使用e.Graphics对象进行绘制操作;
建议lz将e.Graphics对象作为参数传入进行使用。
public void Tshuzi(double a, int b, System.Drawing.Graphics graphics)
{
switch (a.ToString().Length)
{
case 0:
graphics.DrawString("十", NormalFont, Brushes.Black, X, Y);
}
}
在此没有对graphics参数进行有效性判断,lz可以根据需要自己添加。