前提・実現したいこと
C# + CefSharpで外部jsファイルを読み込ませたい
発生している問題・エラーメッセージ
cssファイルとjsファイルを認識してくれません。
該当のソースコード
デザインは、FormにChromiumWebBrowserを1つ(chromiumWebBrowser1)配置しているだけです。
C#
1 public partial class Form1 : Form 2 { 3 private static string StyleSheetFileName = Path.Combine(Application.StartupPath, "style.css"); 4 private static string JQuery331MinFileName = Path.Combine(Application.StartupPath, "jquery-3.3.1.min.js"); 5 private static string JQueryAutoSizeFileName = Path.Combine(Application.StartupPath, "jquery.autosize.min.js"); 6 public Form1() 7 { 8 InitializeComponent(); 9 CefSharpSettings.LegacyJavascriptBindingEnabled = true; 10 chromiumWebBrowser1.JavascriptObjectRepository.Register("objectForScripting", new ObjectForScriptiing(), false); 11 Load += Form1_Load; 12 } 13 14 private void Form1_Load(object sender, EventArgs e) 15 { 16 string str = $@" 17<!DOCTYPE html> 18<html> 19<head> 20<meta charset = utf-8> 21<link rel = stylesheet href = {StyleSheetFileName}> 22<script src = {JQuery331MinFileName}></script> 23<script src = {JQueryAutoSizeFileName}></script> 24<script> 25$(function autosize(){{ 26 $('textarea').autosize(); 27}}); 28 29function showMessage(){{ 30 objectForScripting.showMessage(); 31}} 32</script> 33</head> 34<body> 35<textarea></textarea> 36<input type = button onClick = showMessage()> 37</body> 38</html> 39"; 40 chromiumWebBrowser1.LoadHtml(str); 41 } 42 } 43 44 public class ObjectForScriptiing 45 { 46 public ObjectForScriptiing() 47 { 48 } 49 //このshowMessage()はjavascriptで呼び出せる。 50 public void showMessage() 51 { 52 MessageBox.Show("", ""); 53 } 54 }
上記を実行して表示されたWebページのソースコードです。
html
1<!DOCTYPE html><html><head> 2<meta charset="utf-8"> 3<link rel="stylesheet" href="D:\Projects\Test\Test\bin\x86\Debug\style.css"> 4<script src="D:\Projects\Test\Test\bin\x86\Debug\jquery-3.3.1.min.js"></script> 5<script src="D:\Projects\Test\Test\bin\x86\Debug\jquery.autosize.min.js"></script> 6<script> 7$(function autosize(){ 8 $('textarea').autosize(); 9}); 10 11function showMessage(){ 12 objectForScripting.showMessage(); 13} 14</script> 15</head> 16<body> 17<textarea></textarea> 18<input type="button" onclick="showMessage()"> 19 20 21</body></html>
問題点
CSSが適用されず、JQuery(textareaのautosize)が実行されません。
生成されたソースのパスを開くと、cssとjsファイルをきちんと開けますので、パスは正確です。
どうすれば、JQueryを実行出来ますでしょうか。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
長くなってしまったので回答欄に移動しました。