为什么我不能在C#WebBrowser控件中选择下拉选项?

时间:2016-11-19 16:06:08

标签: c# dom

我想使用C#WebControl在下拉控件中更改所选选项。

html看起来像这样:

<select data-dropdownify-type="month" data-dropdownify-label="Maand" name="birthday.month">
    <option value=""></option>
      <option value="1">January</option>
      <option value="2">February</option>
      <option value="3">March</option>
      <option value="4" selected="selected">April</option>
      <option value="5">May</option>
      <option value="6">June</option>
      <option value="7">July</option>
      <option value="8">August</option>
      <option value="9">September</option>
      <option value="10">October</option>
      <option value="11">November</option>
      <option value="12">December</option>
  </select>

我首先尝试使用此代码选择一个选项:

br.Document.GetElementsByTagName("select").GetElementsByName("birthday.month")[0].SetAttribute("value", "2");

但它对我没有用,我没有看到任何错误,但所选的选项没有改变。

所以我开始在互联网上查找并发现有另一种方法可以做到这一点,然后我尝试用这段代码更改选项:

br.Document.GetElementsByTagName("select").GetElementsByName("birthday.month")[0].Children[2].SetAttribute("selected", "selected");

但这也不起作用!我再次看到没有错误,但所选的选项没有改变。有没有其他方法可以做到这一点?我想也许它与dropdownify有关,但我不确定。

1 个答案:

答案 0 :(得分:0)

要从选择元素中选择选项,请使用BehaviorSubject。在此示例中,使用了非托管selectedIndex库。 HTH

MSHTML