Форма окна C# - Как получил данные значения тега в мое textbox1?

<input name="chkFile" value="2062223616_7147073260_1440589192619132.WMA" type="checkbox">

из этого кода я хочу только данные значения

Пример:

2062223616_7147073260_1440589192619132.WMA

ниже мой код не работает, поэтому, пожалуйста, помогите мне.

Мой код

HtmlElementCollection bColl = webBrowser2.Document.GetElementsByTagName("input");
            foreach (HtmlElement bEl in bColl)
            {
                if (bEl.GetAttribute("name").Equals("chkFile"))
                    showaudiourl.Text = bEl.OuterHtml.Split('"')[3];
            }

2 ответа

Все, что вам нужно, это добавить фрагмент кода, сообщающий приложению, что нужно дождаться инициализации документа веб-браузера:

webBrowser2.Navigate(@"C:\tmp.html");                        // Use your own URL here
while (webBrowser2.ReadyState != WebBrowserReadyState.Complete) // Without it, 
   Application.DoEvents();                                // the document will be null

HtmlElementCollection bColl = webBrowser2.Document.GetElementsByTagName("input");
foreach (HtmlElement bEl in bColl)
{
   if (bEl.GetAttribute("name").Equals("chkFile"))
      showaudiourl.Text = bEl.GetAttribute("value");
}

Значение должно быть доступно с помощью bEl.GetAttribute("value"),

В качестве альтернативы, вы можете использовать webBrowser2_DocumentCompleted событие для обработки документа HTML там.

Использование webBrowser2.GetAttribute("value") чтобы получить значение, которое вы хотите.

HtmlElementCollection bColl = webBrowser2.Document.GetElementsByTagName("input");
foreach (HtmlElement bEl in bColl) {
    if (bEl.GetAttribute("name").Equals("chkFile")) {
        showaudiourl.Text = bEl.GetAttribute("value");    //Changes here
    }
}
Другие вопросы по тегам