vb.net - VB.net - 表格不会显示
问题描述
我的问题涉及一个应用程序,该应用程序目前在生产中运行了 6 个月。但上周,一位用户向我报告了这个:
最重要的是,此应用程序是对 Outlook 的补充,它允许用户通过功能区中的新选项卡创建、编辑和删除工单。
当该用户单击按钮(创建)时,应该会出现一个窗口。在我的代码中,此窗口用于两个地方,一个用于创建工单,另一个用于编辑工单。当用户想要编辑工单时,此窗口会毫无问题地出现。但只是为了创造,他不会出现。
我调用这样的窗口来创建:
Dim oForm1 As Create_form
oForm1 = New Create_form(Nothing)
oForm1.Show()
像这样进行编辑:
Dim oForm1 As Create_form
oForm1 = New Create_form(ticket)
oForm1.Show()
这是构造函数:
Public Sub New(ticket As Ticket)
InitializeComponent()
MaximizeBox = False
actualTicket = ticket
Init_List()
Init_Fields()
End Sub
我已经在互联网上寻找解决方案,但似乎我是唯一一个遇到这个问题的人。此代码在上周之前一直适用于此人,没有任何更改。我想到的一种可能性是 Microsoft 可再发行版和 Outlook 版本(在 Outlook 2016 上开发和测试,在 Outlook 2013 上使用......)。
有任何想法吗 ?
谢谢你的帮助 !
Ps : 请原谅我的英语水平高于平均水平
解决方案
首先,确保您的加载项已启用并在 Outlook 中运行。
Microsoft Office 应用程序可以禁用行为异常的 VSTO 加载项。如果应用程序未加载您的 VSTO 外接程序,则该应用程序可能已硬禁用或软禁用您的 VSTO 外接程序。
当 VSTO 外接程序导致应用程序意外关闭时,可能会发生硬禁用。Startup
如果在 VSTO 外接程序中的事件处理程序正在执行时停止调试器,它也可能发生在您的开发计算机上。
当 VSTO 外接程序产生不会导致应用程序意外关闭的错误时,可能会发生软禁用。例如,如果应用程序在启动事件处理程序执行时抛出未处理的异常,则应用程序可能会软禁用 VSTO 加载项。
当您重新启用软禁用的 VSTO 外接程序时,应用程序会立即尝试加载 VSTO 外接程序。如果最初导致应用程序软禁用 VSTO 插件的问题尚未修复,应用程序将再次软禁用 VSTO 插件。在如何:重新启用已禁用的 VSTO 加载项一文中了解更多相关信息。
很可能该表单显示在 Outlook 窗口的后面。要在 Outlook 窗口顶部显示表单,您需要指定父窗口句柄。在基于 .net 的应用程序或加载项中,您通常使用 Windows 窗体类来显示一个窗口。类的Show
和ShowDialog
方法System.Windows.Forms.Form
接受IWin32Window
代表父窗口句柄的接口实例。有关详细信息,请参阅如何将 Window.Owner 设置为 Outlook 窗口。
推荐阅读
- meteor - 如何通过 Meteor DDP 登录?
- c++ - 读取混合 Unicode 字符和整数的输入
- blockchain - Hyperledger Fabric 1.2 的 ACL 实现
- java - Throwable.initCause() 并通过构造函数设置原因:为什么我们仅限于设置一次原因?
- css - 仅应用带有表情符号的字体
- mysql - 我不知道为什么我在完全加入 MySql 时遇到此错误
- javascript - 如何在 alert() 框中输入内容?
- python - IP Camera 接口与 python opencv
- css - 是否可以将具有特定内容的元素用相同的元素替换为仅具有 CSS 的另一个内容?
- javascript - 如何使用RegExp计算使用js的字符串中由相同字符组成的substr