ここから本文です

WebViewコントロールで情報を取得しようとしたのですが上手く行きません。

ior********さん

2020/7/2108:00:03

WebViewコントロールで情報を取得しようとしたのですが上手く行きません。

ツールウィンドウの上枠にWebサイトを表示し、下枠にHTMLを表示するという形式ですが、
テキストボックスは[object HTMLHtmlElement]になっていました。(スクショ参照)

以下のようなソースコードになっているのですが、どの箇所を修正追加すればいいのでしょうか?

Private _getDataString As String 'WebViewからイベントで取得した文字列
Private _getDataFlag As Boolean 'WebViewからイベントが発生したか
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim getDataValue As String
_getDataFlag = False
'サイトを表示する
WebView1.Navigate("https://www.yodobashi.com/")
'JavaScriptを実行
WebView1.InvokeScript("eval", New String() {"window.external.notify(String(document.documentElement));"})
Application.DoEvents()
'イベントが発生しているかチェック
If _getDataFlag = False Then
MsgBox("err")
Return
End If
'取得できた値を格納
getDataValue = _getDataString
TextBox1.Text = getDataValue
End Sub
Private Sub OnWebViewScriptNotify(sender As Object, e As Microsoft.Toolkit.Win32.UI.Controls.Interop.WinRT.WebViewControlScriptNotifyEventArgs) Handles WebView1.ScriptNotify
_getDataString = e.Value
_getDataFlag = True
End Sub


【作成環境】
Microsoft Visual Studio Community 2019 Version 16.5.4
Windows 10 version 1909

【参考サイト】
https://web.biz-prog.net/readme/webview2.html

getDataFlag,'WebView,End Sub,e As EventArgs,TextBox1.Text

閲覧数:
17
回答数:
1
お礼:
50枚

違反報告

回答

1〜1件/1件中

ipl********さん

2020/7/2110:32:44

>[object HTMLHtmlElement]

HTMLHtmlElementのオブジェクトなので、.InnerTextとか、.Valueなどの値を調べればどうでしょうか。


>_getDataString = e.Value



_getDataString = e.innerText



_getDataString = e.Value

とか。

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる