我有两个具有相同事件处理程序的类,但事件处理程序使用不同的锯齿状列表参数调用相同的方法。
public void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
drawMap(e, myTextFileHandler.getMapCellWalls(), myTextFileHandler.getMapCellPositions());
}
public void pictureBox1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
myGameForm.drawMap(e, mapCellWallList, mapCellPositionList);
}
我可以通过添加两个参数来重用pictureBox1_Paint,这两个参数是drawMap()中使用的锯齿状列表吗?
我确实尝试过,但后来我注意到当我调用 pictureBox1_Paint 时,我什至没有给它一个参数,这让我非常困惑。例如:
private void LevelDesignerForm_Load(object sender, EventArgs e)
{
myGameForm.defineMapArea(this, this.pictureBox1_Paint);
}
最佳实践方法是什么?因为我感觉好像我几乎复制和粘贴了一个方法。任何帮助表示赞赏。谢谢