我有一个winforms应用程序,我想添加一些新功能。
理想情况下,我会有一个具有嵌入式浏览器控件的新表单。我希望浏览器中的页面可以从应用程序本身“提供”(而不是远程服务器)。
将根据App中的数据动态创建页面。
另外,我如何迎合CSS,Javascript和Image文件等资源的引用。理想情况下,这些也需要由应用程序处理。
我该怎么做?
答案 0 :(得分:1)
答案 1 :(得分:1)
我在我的应用程序中使用此技术。我主持了WebBrowser
,我填写如下:
public void DisplayHtml(HtmlGenerator gen)
{
webBrowser.DocumentText = gen.GenerateHtmlString());
}
使用此方法,我不必使用HTML内容在文件系统上实际生成文件。
答案 2 :(得分:0)
在我的测试管理工具(this one中,如果我被允许添加链接),我已经编写了自己的“迷你ASP”,其中包含带有C#代码的HTML页面,然后通过转换动态处理它们将页面转换为C#,compiling the code然后执行它。
请注意,这可能会填充应用程序域,因为您无法卸载动态加载的脚本代码。
此类HTML文件的摘录如下:
<div id="title">
<img src="../_Shared/images/32x32/component_blue_view.png" />
<h1>Test case "[$=tc.Title$]" - Details</h1>
</div>
此处,[$=
和$]
相当于<%=
和%>
。
在另一个项目中,我使用Microsoft VBScript解释器做了类似的事情;而不是将代码编译为C#,我将其编译为VBScript,然后由Microsoft Scripting主机的VBScript引擎执行。
要处理图像和CSS等资源,您只需发送自己的集成Web服务器即可。我通过包含此CodePlex project成功完成了多个项目。