公司从1996年开始使用VB6.0或VC6.0进行ActiveX控件。现在在C#中使用它我们已经为它创建了一个用户控件。 所以它的类是这样的:
**public partial class ResultNumeric : UserControl**
然后我们还想在电子表格的单元格中使用它作为数字单元格类型,我们正在使用 Farpoint spread.So,我们也有这个类:( EditBaseCell类型来自远点传播课程。)
public class NumericCellType : EditBaseCellType
因此我们可以将该控件插入到一个spread的单元格中,并且它有一个_Leave方法,如下所示:
private void m_accept_Leave(object sender, EventArgs e)
{
FpSpread spread = (FpSpread)((ResultNumeric)sender).Parent;
spread.EditMode = false;
}
问题在于,如果我有两个带有这个数字控件的单元格,并将一个单元格移动到另一个单元格,那么调用此_Leave事件然后使用上面的代码将导致Null异常,因为spread为null。 那么根据上面所列的那些定义以及上面的代码,你认为我做错了什么?