我想在VSTO中打开一个表单,通过该表单我仍然可以选择Excel单元格,但不能访问任何菜单或创建新表。
我现在有下面的代码,但是仍然可以单击菜单按钮。我不想从代码中禁用每个菜单按钮
Form1 frm = new Form1();
frm.Show(new WindowFormsWrapper(new IntPtr(Globals.ThisAddIn.Application.Windows[1].Hwnd)));
答案 0 :(得分:0)
Word的protection feature仅允许您进行某些修改,例如记录内容或样式。 Excel似乎也有它,但是我的代理不允许我打开该页面,所以我无法告诉它做什么和不允许做什么。如果距离不够近,则可能是您不走运,因为Office并非真正设计用于这种方式。
此外,仅供参考,您不应该从非模态对话框访问VSTO API。 Multi-threading in VSTO通常充满危险。
您可以考虑使用任务窗格。假设您没有在其中创建自己的线程,那么这里就不会有线程问题。