如何调用其他类的OnPaintBackground方法?

askerasker 2010-06-09 11:29:38
可能我一开始就写错了

我在主窗体类里
       private void picBoxMain_Paint(object sender, PaintEventArgs e)
{
//绘制网格线
DrawGraph.DrawCoordinateSystem(sender, e, ClientRectangle);
}


public static class DrawGraph新建了一个类在DrawGraph.cs里
该静态类里边有个方法是
public static void DrawCoordinateSystem(object sender, PaintEventArgs e, Rectangle ClientRectangle)
用来绘制网格线

今天翻MSDN发现有个OnPaintBackground方法,想试试看,但是问题连连

1。
public static override void OnPaintBackground(PaintEventArgs e)
{
//base.OnPaintBackground(e);
报错,不允许在静态类里用base关键字,这个方法是从软件开始到结束一直要调用的,所以我做成了静态类,莫非还是要用实例化类的方式?

2。
怎么在主窗体的picBox里调用这个重写的方法绘制背景呢?
直接DrawGraph.,智能感应找不到我的这个方法啊
我想把所有的绘图方法都写到DrawGraph里,所以不想在主窗体类里写实际的绘图方法,只想调用下

3。
我是不是该把类写成实例化类,网格线这个自始至终需要绘制的方法改成静态就可以了?

4。
我是用backgroundWorker线程绘制的,可能需要传object参数,来传递ClientRectangle等picBox的参数,你看我最开始的方法里就传递了ClientRectangle参数,是不是只有这样传递参数,要不然DrawGraph类无法获得主窗体相关参数?
...全文
152 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
HaveOneDream 2010-08-16
  • 打赏
  • 举报
回复
登录后还是看不到回复内容
shighui 2010-06-09
  • 打赏
  • 举报
回复
裁夺 苦苦苦
canxue418 2010-06-09
  • 打赏
  • 举报
回复
不懂,顶了!
pushiming 2010-06-09
  • 打赏
  • 举报
回复
楼主你或许可以看看这篇文章:http://wenku.baidu.com/view/679a71cfa1c7aa00b52acbe0.html
宇峰科技 2010-06-09
  • 打赏
  • 举报
回复
顶。。。。。。。。。。
askerasker 2010-06-09
  • 打赏
  • 举报
回复
一个午觉醒来只有顶的没有回的啊……失望ing

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧