office addin 反射挂事件(求解)

「已注销」 2010-10-09 10:45:32
做一个office addin项目,需要兼容office2003、2007,考虑用反射做。
自定义的菜单可以挂上去了,但是菜单的事件无法挂上去。
用的方法如下:
object Controls = menuBar.GetType().InvokeMember("Controls", BindingFlags.GetProperty, null, "Menu Bar", null);
object[] p2 = new object[] { (byte)1, missing, missing, missing, true };//MsoControlType.msoControlButton=1
tempcbc = Controls.GetType().InvokeMember("Add", BindingFlags.InvokeMethod, Type.DefaultBinder, Controls, p2);//
tempcbc.GetType().InvokeMember("Caption", BindingFlags.SetProperty, Type.DefaultBinder, tempcbc, new object[] { strSubMenubarName });
tempcbc.GetType().InvokeMember("BeginGroup", BindingFlags.SetProperty, Type.DefaultBinder, tempcbc, new object[] { false });
tempcbc.GetType().InvokeMember("Tag", BindingFlags.SetProperty, Type.DefaultBinder, tempcbc, new object[] { strSubMenubarName });
tempcbc.GetType().InvokeMember("Style", BindingFlags.SetProperty, Type.DefaultBinder, tempcbc, new object[] { (byte)3 });//(byte)
EventInfo evClick = tempcbp.GetType().GetEvent("Click",BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.Public);
if (evClick != null)
{
evClick.AddEventHandler(tempcbp, new EventHandler(LuckyHandler));
}
请大侠们帮我看看是为什么?
...全文
107 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧