webページのダウンロード待ちではなくて、PCにファイルをダウンロードするときの処理。
DevTools Protocolを使う。
ダウンロードを始めてから
m_downloadState をみてcompletedかcanceledかになるまで待つようにすればOK
Private m_downloadState As String
...
Private Sub CoreWebView2_DevToolsProtocolEventReceived(sender As Object, e As CoreWebView2DevToolsProtocolEventReceivedEventArgs)
If InStr(e.ParameterObjectAsJson, """state"":""completed""") <> 0 Then
m_downloadState = "completed"
ElseIf InStr(e.ParameterObjectAsJson, """state"":""inProgress""") <> 0 Then
m_downloadState = "inProgress"
ElseIf InStr(e.ParameterObjectAsJson, """state"":""canceled""") <> 0 Then
m_downloadState = "canceled"
Else
m_downloadState = ""
End If
End Sub
...
Await FormE.view2.CoreWebView2.CallDevToolsProtocolMethodAsync("Page.enable", "{}")
AddHandler FormE.view2.CoreWebView2.GetDevToolsProtocolEventReceiver("Page.downloadProgress").DevToolsProtocolEventReceived, AddressOf CoreWebView2_DevToolsProtocolEventReceived