我们正在使用Outlook外接程序(Visual Basic .NET Framework 4客户端配置文件,Office 365业务16.0.11727.20230)在WebBrowser
控件中显示某些内容。我对Visual Basic不太熟悉,因为其他人创建了此插件,并且他现在不再可用,所以首先对不起,如果我犯了任何基本错误。
实际上,该控件应显示一些.xml内容,但是为了简化问题,我暂时仅尝试显示网页https://www.google.at。 在此插件中显示内容始终可以正常工作,并且自从上次Windows /办公室更新以来,我得到的是一个白色屏幕,没有代码错误。 如果我创建了一个新的Windows窗体应用程序,并且该控件在没有Outlook的情况下运行,则显示的内容没有任何问题(uri和实际的.xml),因此我认为它与新的Outlook安全性设置或类似内容有关。 / p>
该控件使用lib Windows.Forms.WebBrowser,URL设置如下:
Public Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
Dim url = "https://www.google.at"
Call WebBrowser1.Navigate(New System.Uri(url))
Catch ex As Exception
MsgBox(ex.Message)
End Try
End Sub
我已经弄清楚了,如果我启用了文件/常规选项下的“优化兼容性”设置,则控件会显示我的内容,但实际上我希望它在不使用该设置的情况下显示内容,因为我认为不应是必要的。
显示内容的另一种方法是使用“ Microsoft Web浏览器”(AxSHDocVw.AxWebBrowser)控件。这个也显示了我的内容,但是有一个较旧的UI,我不知道如何用这个禁用滚动条。 不知道此信息是否有助于弄清楚为什么System.Windows.Forms控件不显示内容。
感谢您提供任何帮助或建议,以帮助我重新获得控制权以显示其中的某些内容。
答案 0 :(得分:0)
WebBrowser
控件是ActiveX WebBrowser
控件的托管包装,并且使用用户计算机上安装的任何版本的控件。
部分受信任的代码不能使用WebBrowser控件。有关更多信息,请参见Using Libraries from Partially Trusted Code。
WebBrowser类只能在设置为单线程单元(STA)模式的线程中使用。要使用此类,请确保您的Main
方法标记有STAThreadAttribute属性。