Laden...

WebBrowser-Control: Aus mehreren Radio Buttons mit identischem Namen und Value den richtigen wählen

Erstellt von tinchen vor 9 Jahren Letzter Beitrag vor 9 Jahren 1.699 Views
T
tinchen Themenstarter:in
4 Beiträge seit 2014
vor 9 Jahren
WebBrowser-Control: Aus mehreren Radio Buttons mit identischem Namen und Value den richtigen wählen

Hey,

bin am verzweifeln, vlt könnt ihr mir ja helfen !?

Ich möchte in meiner Anwendung im Webbrowser einen Radio Butten klicken, das ganze wäre auch kein Problem wenn es da nicht 2 geben würde die exakt den selben Namen und die selbe Value hätten, hier der Quellcode:

<input type="radio" value="1" name="ignore_case"></input>

Dieser Radio Button kommt je nach Einstellungen 1-2 mal auf der Seite vor, wenn ich das nun so mache:

HtmlElement myRadio = webBrowser1.Document.All.GetElementsByName("ignore_case")[1];
myRadio.InvokeMember("click");

... klickt er logischer Weiße immer den oberen, aber wie kann ich den 2. also den unteren anwählen?

Hab den ganzen mittag fleißig gegoogelt aber finde nichts passendes, hoffe ihr habt einen Rat für mich.

T
314 Beiträge seit 2013
vor 9 Jahren

Hi,

naja offensichtlich bekommst Du ja ein Array von Elementen. Ist hier die Reihenfolge immer gleich?

Dann ist an einem entsprechend anderen Index z.B. 0 auch ein anderes Element.
Sind die beiden Inputs komplett identisch? Also auch Value etc.? Ansonsten kannst Du natürlich auch einfach über das Array iterrieren und abhängig von den Werten (z.B. value) das gewünschte wählen.

T
tinchen Themenstarter:in
4 Beiträge seit 2014
vor 9 Jahren

Sind die beiden Inputs komplett identisch? Also auch Value etc.?

Ja das ist ja mein Problem, sorry wenn ichs unverständlich erklärt habe.

T
314 Beiträge seit 2013
vor 9 Jahren

Und die Reihenfolge im Array ist unterschiedlich?
Falls ja, die Inputs selbst kannst Du nicht verändern, sodass Du sie sauber identifizieren kannst?

49.485 Beiträge seit 2005
vor 9 Jahren

Hallo tinchen,

irgendein eindeutiges Kriterium zur Identifikation des richtigen Buttons muss es geben. Sonst ist es nicht möglich, den richtigen Button zu wählen. Aber es gibt natürlich mehr Kriterien als die Angaben im Tag der Buttons selbst. Zum einen wäre die Reihenfolge im HTML-Code. Man kann auch ermitteln, zu welchem Form die Buttons gehören. Oder vielleicht kann man es an den übergeordneten Elementen festmachen, z.B. in welchem Form-Element sich der Button befindet. Schlimmstenfalls muss man rekursiv über die HtmlElemente laufen. Wenn es irgend ein eindeutiges Unterscheidungskriterium gibt, kommt man immer an den richtigen Button.

Ich hoffe deine Frage zielte nicht nur darauf, dass du dem von dir gezeigten C# Code statt dem Index 1 auch einen anderen Index wählen kannst, z.B. 0 oder 2 (falls entsprechend viele Buttons vorhanden sind).

herbivore

T
tinchen Themenstarter:in
4 Beiträge seit 2014
vor 9 Jahren

Ich hoffe deine Frage zielte nicht nur darauf, dass du dem von dir gezeigten C# Code statt dem Index 1 auch einen anderen Index wählen kannst, z.B. 0 oder 2 (falls entsprechend viele Buttons vorhanden sind)

Natürlich nicht bin zwar sicher kein Profi aber auch kein Anfänger 🙂

Danke mal für eure Antworten, werd mich morgen nochmal drann setzen.

Edit:

Man kann auch ermitteln, zu welchem Form die Buttons gehören.

Danke so hat es geklappt 👍