Dropdown Menü Anwendungsbasiert ändern

  • VB.NET

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von milaim.

    Dropdown Menü Anwendungsbasiert ändern

    Servus,

    folgendes Problem
    Ich hab hier ein Webbrowser welchen ich automatisch befüllen möchte, dieser enthält aber Dropdownmenüs.

    HTML-Quellcode

    1. <select id="foo_pre_reg_country" name="foo_pre_reg_country" style="/*display:none;*/">
    2. <option value="AFG">Afghanistan</option>
    3. <option value="EGY">Ägypten</option>
    4. <option value="ALA">Åland</option>
    5. <option value="ALB">Albanien</option>
    6. <option value="DZA">Algerien</option>
    7. <option value="ASM">Amerikanisch-Samoa</option>
    8. <option value="VIR">Amerikanische Jungferninseln</option>
    9. <option value="AND">Andorra</option>
    10. <option value="AGO">Angola</option>
    11. <option value="AIA">Anguilla</option>
    12. <option value="ATA">Antarktika</option>
    13. <option value="ATG">Antigua und Barbuda</option>
    14. </select>



    Nach viel recherche bin ich auf dies hier gestoßen:

    VB.NET-Quellcode

    1. WebBrowser1.Document.GetElementById("foo_pre_reg_country").SetAttribute("Value", "EGY")


    Hat aber leider nicht funktioniert.
    Bin im coden eher Anfänger
    Danke für eure Hilf im vorraus
    Deine Problembeschreibung ist einfach zu nichtssagen :D

    Kannst du eventuell dein Problem bzw. Vorhaben so schildern, damit man es versteht um was es gehen könnte?


    EDIT:

    versuch mal

    VB.NET-Quellcode

    1. WebBrowser1.Document.GetElementById("foo_pre_reg_country").SetAttribute("[tt]value[/tt]", "EGY")


    so müsste das value eig. geschrieben werden.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „shaebich“ ()

    C#-Quellcode

    1. public void SetComboItem(string id, string value) {
    2. HtmlElement ee = this.webBrowser1.Document.GetElementById(id);
    3. foreach (HtmlElement item in ee.Children) {
    4. if (item.OuterHtml.ToLower().IndexOf(value.ToLower()) >= 0) {
    5. item.SetAttribute("selected", "selected");
    6. item.InvokeMember("onChange");
    7. }
    8. else {
    9. item.SetAttribute("selected", "");
    10. }
    11. }
    12. ee = this.webBrowser1.Document.GetElementById(id + "-input");
    13. ee.InnerText = value;
    14. }


    Der Aufruf:

    C#-Quellcode

    1. this.SetComboItem("MySite.condition_s", "First");


    Das kannst du relativ leicht in VB umschreiben.

    Quelle: stackoverflow
    "Wenn jemand in einem Betrieb unverzichtbar ist, dann ist dieser Betrieb falsch organisiert." - Roberto Niederer