我有一个场景,当任何请求失败时,我需要导航到我自己的自定义html页面。我面临的问题是我有一个背景图像,我需要使用自定义html页面显示。
我已经按如下方式实现了代码:
CustomHtmlDoc = "<html><head></head><body background=\"{0}\"; oncontextmenu='return false;'><br><br></br></br><hr><h4 style='font-family:Footlight MT Light;color:red;font-size:20px;'>" + "ErrorMessage" + "</h4><h4 style='font-family:Footlight MT Light;color:red;font-size:25px;'>Please Verify the Configured URL from Dashboard Configuration</h4> <hr></body></html>";
string CustomHtmlDocument = string.Format(CustomHtmlDoc,AppDomain.CurrentDomain.BaseDirectory + "AdministrationUIBrowser\\AdministrationUIBrowserFactory\\ErrorBackground.png");
WebBrowserControlView.DocumentText = CustomHtmlDocument;
当我尝试在本地运行场景时,我能够将错误页面作为背景。但在部署结束时,我只是得到空白屏幕,只有内容没有任何背景图像。我的是WPF应用程序。
答案 0 :(得分:0)
Windows窗体中的DocumentText实现不实现IMoniker,并且加载的文档将具有大约的基址:空白,因此您的页面无法找到背景图像。
您可以使用基本元素指定相对网址的基本位置,或实现网址名字对象。有一个关于在http://www.codeproject.com/KB/miscctrl/csEXWB.aspx实现网址名称的示例。在页面上搜索LoadHtmlIntoBrowser(字符串html,字符串sBaseUrl)。
答案 1 :(得分:0)
也许您可以使用Base64编码的图像。 Check this service out。我测试了它,它就像一个魅力。
希望它有所帮助。
答案 2 :(得分:0)
尝试100%确定 (图像当前文件夹)
this.webBrowser1.DocumentText =
@"<b>This is an image:</b> <img src='" +
System.IO.Path.GetDirectoryName(Application.ExecutablePath)
+"/ErrorBackground.png'>";