COM 对象与其基础 RCW 分开后就不能再使用

今天碰到COM 对象与其基础 RCW 分开后就不能再使用问题,简单在CS的程序里嵌入了一个excel (AxDSOFramer

在这个Form里当前的选择区域记在了一个变量里,这时又打开了一个Form把这个区域Range传了过去,在那个Form里进行了一些处理//省略。但当第二个FORM关闭后,在后到第一个Form这时  void xlsSheet_SelectionChange(Range Target)方法就怎么也不好用了,跟本进不去,又点了一下注册事件的按钮执行 xlsSheet.SelectionChange += new DocEvents_SelectionChangeEventHandler(xlsSheet_SelectionChange);时出“COM 对象与其基础 RCW 分开后就不能再使用”的错误,代码如下,向各位高手请教解决方法。

 

ContractedBlock.gif ExpandedBlockStart.gif Code
 1Range _currRange;
 2private void simpleButton1_Click(object sender, EventArgs e)
 3ExpandedBlockStart.gifContractedBlock.gif        {
 4            new SetComment(ofrmRpt, _currRange, new Report_Calibre(4)).ShowDialog(); //第二个FORM
 5        }

 6
 7        private void simpleButton2_Click(object sender, EventArgs e)
 8ExpandedBlockStart.gifContractedBlock.gif        {
 9            Workbook xlsBook = (Workbook)ofrmRpt.ActiveDocument;
10
11            Worksheet xlsSheet = (Worksheet)xlsBook.ActiveSheet;
12
13            xlsSheet.SelectionChange += new DocEvents_SelectionChangeEventHandler(xlsSheet_SelectionChange);
14        }

15
16        void xlsSheet_SelectionChange(Range Target)
17ExpandedBlockStart.gifContractedBlock.gif        {
18            _currRange = Target;
19        }

转载于:https://www.cnblogs.com/tomsun0910/archive/2008/08/13/1266671.html

你可能感兴趣的:(COM 对象与其基础 RCW 分开后就不能再使用)