日期:2014-05-19  浏览次数:20863 次

●●●类中显示一个窗体,出现试读取或写入受保护的内存错误,为什么会这样?●●●
在程序主窗体内调一个MapBrowse窗体,一切正常,MapBrowse窗体里放置了一个ocx组件,方式就是如下最基本方式
  MapBrowse   form   =   new   MapBrowse();
  form.Show();
        我现在写了一个类,在类中动态生成了一个系列的按钮,我动态为按钮添加单击和双击事件,均无效,添加鼠标弹起落下事件却可以,在鼠标落下事件里,再以刚才的方式去调MapBrowse   却出错,
        错误如下:“尝试读取或写入受保护的内存。这通常指示其他内存已损坏。”
        是什么原因造成了这种情况,该如何避免,或者有没有其他间接的实现方法。
        比如类中我怎么触发主窗体上的按钮事件?
请大家指点.

------解决方案--------------------
不明白,具体点?
------解决方案--------------------
会不会因为btn 是局部变量,你把它定义为类的私有变量试一下
------解决方案--------------------
MouseClick里面的方法执行不到是因为在MouseDown里就已经出错了
MouseDown是在MouseClick前面执行的

“尝试读取或写入受保护的内存。这通常指示其他内存已损坏”错误

应该是MapBrowse里的错吧