我正在尝试使用自定义功能区面板http://www.codeproject.com/Articles/25907/A-Professional-Ribbon-You-Will-Use-Now-with-orb,以及想办法制作一个将采用“插件”.dll 的应用程序。这是我目前正在尝试的代码。
Assembly assembly = Assembly.LoadFrom(@"dir");
Type type = assembly.GetType("WindowsFormsControlLibrary2.UserControl1");
object o = Activator.CreateInstance(type);
string s = "GiveControl";
UserControl uc = (UserControl)type.GetMethod(s).Invoke(o, null);
((Panel)uc.Controls.Find("panel1", true)[0]).Parent = panel2;
RibbonTab rt = (RibbonTab)uc.Controls.Find("ribbonTab1", true)[0];
最后一行给我一个错误,指出“无法将类型'System.Windows.Forms.Control'转换为'System.Windows.Forms.RibbonTab'”
这条消息的含义很明显,但我不明白为什么会这样。是否有原因无法以这种方式找到自定义控件?
此代码/应用程序只是概念证明/试图找到一种方法来做到这一点(我的第一次尝试)。任何已知的方法将不胜感激。
------UPDATE-----
Appologies,我应该说,这个错误发生在编译时,而不是运行时。