我正在使用WebBrowser控件編寫C#應用程序,並且我希望顯示的所有內容都來自嵌入式資源 - 不是靜態本地文件,而不是遠程文件。C#WebBrowser提供腳本和圖像的HTML
設置控件嵌入HTML文件的初始文本,此代碼由this post啓發的偉大工程:
browser.DocumentText=loadResourceText("myapp.index.html");
private string loadResourceText(string name)
{
Assembly assembly = Assembly.GetExecutingAssembly();
Stream stream = assembly.GetManifestResourceStream(name);
StreamReader streamReader = new StreamReader(stream);
String myText = streamReader.ReadToEnd();
return myText;
}
如說是,文件中的HTML簡稱 - 的JavaScript,像<img src="whatever.png"/>
圖片等等,不起作用。我發現了類似的問題here和here,但都沒有問究竟是我的意思是,指的是嵌入式資源中的exe,而不是文件。
我試過res://...
和使用<base href='..."
但似乎都沒有工作(雖然我可能沒有得到它的權利)。
也許(根據我自己對this question的建議),使用一個小小的嵌入式C#web服務器是唯一的方法......但我會認爲有一些技巧可以實現這個目標嗎?
謝謝!