問題タブ [cefsharp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
1861 参照

c# - CefSharp で JavaScript を一時的に無効にする

ソースコードを解析して関連データを抽出することにより、いくつかのWebサイトからデータを収集するCefSharp.WebViewが埋め込まれた小さなプログラムを作成しましたが、そのうちのいくつかはソースコードにデータがなく、JavaScriptを介してデータをロードします少しあと。しかし幸いなことに、これらのサイトは JavaScript が有効になっているかどうかを確認し、JavaScript が無効になっている場合はソース コードでデータを提供します。

したがって、デフォルトで JS を有効にし、これらの奇妙なページの 1 つをロードする前に一時的にのみ JS を無効にしたいと考えています。

C#の下でCefSharpでこれを実現する方法はありますか?

もともと私は IE WebBrowser コントロールを使用するつもりでしたが、これは間違いなくグローバルなインターネット設定のみを使用し、JS を一時的に無効にする方法はなく、システムで JS を完全に無効にしたくありません。

0 投票する
1 に答える
4074 参照

c# - CefSharp JavaScript インジェクション

ページが読み込まれた後、ドキュメントの先頭に JavaScript を挿入しようとしています。

スクリプト行 1 と 2 を評価した後、開発ツールでスクリプト変数を確認できます。しかし、3 行目を実行しようとすると、例外が発生します。

An unhandled exception of type 'System.StackOverflowException' occurred in CefSharp.dll

私の間違いはどこですか?

0 投票する
2 に答える
6821 参照

winforms - CefSharp でプロキシを手動で設定する方法

このリンクからダウンロードした CefSharp アプリケーションに取り組んでいます 。プロキシを手動で設定したい。申し込みましAutoDetectProxySettings = trueたが、うまくいっているかどうかわかりません。サンプルでは

そこにブレークポイントをマークしましたが、それを呼び出していません。

0 投票する
1 に答える
3503 参照

.net - 相互運用ユーザー コントロールの CEFSharp (Chromium Embedded Framework)

Chromium Embedded Framework の CefSharp CLR バインディングを使用して、従来の ActiveX コントロール (WonderWare InTouch HMI) のみをサポートするアプリケーションに埋め込むことができる代替 Web ブラウザー コントロールを作成して、いくつかの HTML5 サポートを取得しようとしています。古い機械。

これまでのところ、Microsoft InteropForms Toolkitを使用して Interop User Control を作成し、CefSharp.WinForms WebView を非常に必要最小限の方法でコントロールに埋め込みました。

DLL をビルドするときに、コマンドを使用して登録します。

regasm /tlb /コードベース Cefsharp.WebControl.dll

これはほとんどの場合うまくいくようですが、完全には理解できない問題がいくつかあります。Excel で VBA フォームを使用してテストしています (純粋に利便性のため)。Form Builder を使用している場合、ユーザー フォームに追加されたときにコントロールが実際に初期化され、Web ページが完全に読み込まれます。

IDE の例

ただし、UseForm を表示しようとすると、webview のハンドルまたはインスタンス (またはその両方) が破壊されているように見え、修正方法がわかりません。フォームを表示して、次のようなことを試してみると

オブジェクトが存在しないというエラーが表示されます。少しいじりましたが、ポインターが無効であるなどの別のエラーが発生することもありますが、これまでのところ、適切に設定する方法がわかりません。ユーザー フォーム イベントの処理に問題があると思いますが、よくわかりません。

誰かがこれについて何か洞察を持っているなら、私はそれを大いに感謝します. ありがとう!

0 投票する
1 に答える
267 参照

wpf - クラス内から TabControl にアクセスするにはどうすればよいですか?

Visual Basic を学習してから 1 週間が経ちましたが、完全に行き詰まっています。

WPF の XAML に 2 つの TabItems を持つ TabControl があります。

そして、MainWindow クラス内のクラス、bookmarkControlsObj からタブを (プログラムによって/問題のある方法で) 変更しようとしています。

しかし、私は " Reference to a non-shared member requires an object reference." を取得し続けます。bookmarkControlsObj クラス内で XAML TabControl を共有する方法がわかりません。助けてください。

編集:

ネストされたクラスがある理由は、Javascript 関数を含むページを収容する cefsharp (クロム埋め込み) WebView からクラス内の「フォロー」サブRegisterJsObjectを呼び出しているためです。 Javascript によるメソッド。この場合、2番目のTabItemに含まれるブラウザーにロードする「フォロー」サブにURLを送信していますが、ロードする前にそのタブに自動的に切り替えたい-簡単に言えば、RegisterJsObjectうまくいくようですクラス内に含まれている場合..ネストされているのは、それが最終的な場所であるためです。

「共有」と宣言してTabItemに追加したため、クラスの2番目のタブでブラウザーにアクセスできますが、TabControl(視覚的に設定)をSharedとして宣言する方法がわかりません

これが役立つ場合は、RegisterJSObject へのリンクを次に示し ます。

0 投票する
2 に答える
7439 参照

wpf - ロード時に TabItem に強制的にコンテンツを初期化させるにはどうすればよいですか?

[免責事項: Visual Basic は初めてです。]

WPF には、2 つの TabItems を含む TabControl があります。

最初の TabItem には、多数の URL が含まれています。

2 番目の TabItem は、cefSharp webView (.net に埋め込まれたクロム) を含む DockPanel で構成されます。

tab1 の URL をクリックすると、tab2 に含まれるブラウザーにページが読み込まれます...ただし、最初に tab2 をクリックしてブラウザーを初期化した場合にのみ機能します。

いくつかの検索を行った後、vb.net は、表示されるまで TabItem のコンテンツを初期化しないようです。(右?)

それで、私の質問は、選択されていないタブのコンテンツをバックグラウンドでロード時に強制的に初期化するにはどうすればよいですか? (つまり、最初にタブをクリックしたり切り替えたりする必要はありません)

編集:

リクエストに応じて、関連するコードは次のとおりです。

関連する XAML は、「mainBox」という名前の単一の DockPanel で構成されます

そして、ここに私の「コードビハインド」VBスクリプトがあります:

そのため、デフォルトの状態では、起動時に tab1 が表示されます。tab2 (web_view2) のブラウザーは、タブをクリックするか、スクリプトを介してそのタブに変更するまで初期化されません。これで少しは解決することを願っています。

0 投票する
1 に答える
4392 参照

c# - cefsharp ロケーション変更イベント C#

cefsharpでWebビューの場所が変更されたときにイベントを設定する方法と、他のURLにリダイレクトされないようにする方法を知る必要があります