Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
C# -WPF WebControl
Gembolum
myCSharp.de - Member



Dabei seit:
Beiträge: 6

Themenstarter:

C# -WPF WebControl

beantworten | zitieren | melden

Hallo zusammen,

wir haben eine Waage, mit der wir immer manuell das Gewicht in eine Webseite eintragen.

Mein gedanke ist, dass hier eine kleine WPF Anwendung die WebSeite über das WebControll öffnet und via z.B. F2 den Wert in das focusierte Feld einträgt.

Das auslessen des Werts über F2 und ausgabe in eine bestimmte TextBox innerhalb der Anwenung habe ich schon erfolgreich getestet.

Wie kann ich das jetzt aber innerhalb des WebContorls an ein Element übergeben, dass den Focus hat?
Noch besser were eine möglichkeit, das immer nur ein Bestimmtes Textfeld der Seite angesprochen wird. Egal ob es den Focus hat oder nicht.

Ist das möglich und kann mir hier wer ein Tipp geben?

Vorab schonmal danke für eure Hilfe.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Gembolum am .
private Nachricht | Beiträge des Benutzers
Gembolum
myCSharp.de - Member



Dabei seit:
Beiträge: 6

Themenstarter:

beantworten | zitieren | melden

Sorry für den doppelpost, aber kann man sein Beitrag nur einmal editieren???

Für WinForms habe ich was passendes gefunden und konnte mit folgendem Code und der Seite Google.com testen.
Sicher geht das doch dann auch in WPF, oder?


private void button2_Click(object sender, EventArgs e)
{
     for (int i = 0; i < webBrowser1.Document.Forms.Count; i++)
     {
           HtmlElement element = webBrowser1.Document.Forms[i].All[i];

            if (element != null && element.GetAttribute("value").Equals(""))
            {
                webBrowser1.Document.All["q"].SetAttribute("value", textBox2.Text);
                webBrowser1.Document.Forms[i].InvokeMember("submit");
            }
       }
}
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16.310

beantworten | zitieren | melden

Das eingebaute Browser Control ist völlig veraltet und wird auch nicht mehr aktualisiert.
Siehe dazu auch die Warning in WebBrowser Class (System.Windows.Controls).
Das Browser Control basiert auf dem Internet Explorer 7 aus 2006.

Willst Du weiterhin eingebaute Browser Features verwenden, dann verwende zB WebView2, die Engine des neuen Edge Browsers.
Get started with WebView2 in WPF apps - Microsoft Edge Development

Zitat
Sorry für den doppelpost, aber kann man sein Beitrag nur einmal editieren???
Man kann seinen Beitrag 30 Minuten lang editieren.
private Nachricht | Beiträge des Benutzers
Gembolum
myCSharp.de - Member



Dabei seit:
Beiträge: 6

Themenstarter:

beantworten | zitieren | melden

Danke für die Unterstützung. Habe es mit WebView2 jetzt hinbekommen.

Leider hat sich jetzt noch ein Problem ergeben.

Ich öffne mit meinem Tool eine von SAP generierte Seite. An einem PC mit Single Sign-on geht es wunderbar.
Bei anderen Rechnern öffnet sich im Edge HTTP-Authentication (?) und der MA gibt seine Daten an.

Beim öffnen der Seite in meinem Tool wird das Anmeldefenster nicht geöffnet. Die Seite bleibt weiß und man kann nicht arbeiten.

Bei einem Test mit der Seite https://authenticationtest.com/HTTPAuth/ geht es jedoch.

Hat hier jemand schon Erfahrungen?
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Gembolum am .
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 16.310

beantworten | zitieren | melden

Zitat von Gembolum
Beim öffnen der Seite in meinem Tool wird das Anmeldefenster nicht geöffnet. Die Seite bleibt weiß und man kann nicht arbeiten.
Du wirst vermutlich (?) von OpenId Auth Code Flow sprechen; bisher ist mir kein Szenario bekannt, wo das nicht funktionieren soll.
Einzig Google als Authprovider versucht derzeit eingebettete Browser-Logins aktiv zu unterbinden.
private Nachricht | Beiträge des Benutzers
Gembolum
myCSharp.de - Member



Dabei seit:
Beiträge: 6

Themenstarter:

beantworten | zitieren | melden

Ok, problem gelöst.

Für das Verzeichnis hatte der TestUser nur ausführrechte. Nachdem der TestUser auch änderrechte hatte, ging es.

Die letzte Frage zu dem Thema:
Warum braucht man bei OpenId Auth Code änderrechte im Verzeichnis?
Habe es mir nach dem start angeschaut, hab keine änderungen (z.B. Datei) feststellen können.

Ist für Profis eventeull eine dumme Frage, aber ich möchte es als Neuling verstehen.
private Nachricht | Beiträge des Benutzers