C# 编写的 ActiveX 控件中含有事件。在HTML中无法触发,始终提示 事件为空!
如下 C# 编写的 ActiveX 控件中含有事件。在HTML中无法触发,始终提示 事件为空! 事件接口和类COM申明做了,还是有问题,可能是什么原因?namespace ClassLibrary1
{
[GuidAttribute( "9FD5FA47-A13C-4fb7-BBC2-740AB0FC0EB5 "), InterfaceTypeAttribute(ComInterfaceType.InterfaceIsIDispatch)]
public interface ControlEvents
{
[DispIdAttribute(1)]
void OnTestEvent(string msg);
}
/// <summary> Class1 的摘要说明 </summary>
/// <remarks> adsfasdfasdf </remarks>
[Guid( "A69AC4D2-7A3E-45f8-93D5-84F39E302116 ")]
[ComVisible(true)]
[ClassInterface(ClassInterfaceType.AutoDual)]
[ComSourceInterfacesAttribute(typeof(ClassLibrary1.ControlEvents))]
public class UserControl1 : UserControl
{
public delegate void TestEvent(string msg);
public event TestEvent OnTestEvent;
……
public void TestVoid(string msg)
{
MessageBox.Show( "808p: "+msg);
//发生事件
if (this.OnTestEvent != null)
OnTestEvent(msg);
else
MessageBox.Show( "事件为空 ");
}
}
}
--------------------编程问答-------------------- MARK UP --------------------编程问答-------------------- 昨天加了一点COMRegister的代码,重新生成后,可在VS2005中控件测试容器中插入并测试,发现在其中事件是可以存在的且能响应的!但现在的问题是为什么在IE的HTML中Object调用就提示事件为空??
哪位大虾遇到过,请指教!
补充:.NET技术 , C#