Laden...

webView2 nach Postback Html Code

Erstellt von hlviktor007 vor 3 Jahren Letzter Beitrag vor 3 Jahren 727 Views
H
hlviktor007 Themenstarter:in
4 Beiträge seit 2021
vor 3 Jahren
webView2 nach Postback Html Code

Guten Abend.

Ich habe eine Frage zu webView2. Ich navigiere zu einer Seite, lese Hmtl Code und führe Postback aus (mit Click). Wie kann ich dann den geänderten Code noch mal analysieren?
Die URL kann nicht noch mal aufgerufen werden....


        private void Hauptfenster_Load(object sender, EventArgs e)
        {
            webView2.NavigationCompleted += WebView_NavigationCompleted;
        }

string html;
        private async void WebView_NavigationCompleted(object sender, CoreWebView2NavigationCompletedEventArgs e)
        {            
            html = await webView2.ExecuteScriptAsync("document.documentElement.outerHTML;");
        }

        private bool Speichern()
        {
            webView2.ExecuteScriptAsync("document.getElementById('SaveBtn').click()");
//Wie kann ich jetzt nach Postback (Html) analysieren?
        }


R
5 Beiträge seit 2021
vor 3 Jahren

	private void Hauptfenster_Load(object sender, EventArgs e)
	{
		webView2.NavigationCompleted += WebView_NavigationCompleted;
	}

	private string html;
	private async void WebView_NavigationCompleted(object sender, CoreWebView2NavigationCompletedEventArgs e)
	{
		html = await webView2.ExecuteScriptAsync("document.documentElement.outerHTML;");
	}

	private bool Speichern()
	{
		webView2.ExecuteScriptAsync("document.getElementById('SaveBtn').click()");
	//Wie kann ich jetzt nach Postback (Html) analysieren?
		console.log(this.html); // so kannst du den gespeicherten HTML code, sollte der richtig da rein gespeichert werden, wiederverwenden. 
// Da sollte jetzt eben der String drinnen sein. Bei selenium würde ich das so schreiben: html = await webView2.ExecuteScriptAsync("return document.documentElement.outerHTML;");,
// aber wenn deine Variante auch so geht, ist das ja kein problem.
	}

H
hlviktor007 Themenstarter:in
4 Beiträge seit 2021
vor 3 Jahren

Das Problem was ich jetzt habe:

NavigationCompleted(Wir nur dann asugelöst wen nich eine Seite Besuche mit Navigate z.B).


        private bool Speichern()
        {
            webView2.ExecuteScriptAsync("document.getElementById('SaveBtn').click()");
            //Die Methode NavigationCompleted wird nicht ausgeführt.... 
            //Somit habe ich jetzt keinen Zugriff auf geänderten HTML COde
        }