2017-01-27 5 views
1

Я пытаюсь загрузить Google и получить идентификатор поискового запроса. Идентификатор окна - «lst-ib». Что, когда программа отправляется на отладку, ожидает точку с запятой.Как получить идентификатор HTMLElement, если он содержит «-»

Есть ли способ обойти его, чтобы получить идентификатор элемента? До сих пор у меня есть:

using System; 
using System.Diagnostics; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 

namespace ConsoleApplication1 
{ 
    class Program 
    { 
     public void Main(string[] args) 
     { 

      Process.Start("www.google.com"); 

      HtmlElement lst-ib = WebBrowser1.Document.All["foo"]; 
      //expects a semi colon on the line above after the element id 

      if (lst-ib != null) 
      { 
       lst-ib.InnerText = "test"; 
      } 

      Console.ReadKey(); 
     } 
    } 
} 
+1

ERM, так что не используйте переменную с тем же именем, то есть используйте 'HtmlElement lst_ib' - вы можете назвать ее как угодно (пока она подчиняется правилам именования) –

ответ

1

То есть C# код и - не является действительным в идентификаторах. Не стесняйтесь называть переменную по своему усмотрению - она ​​не влияет на идентификатор элемента.

1

- является оператор, вы не можете использовать этот путь!

Здесь вы найдете более подробную информацию о операторов: https://msdn.microsoft.com/en-us/library/6a71f45d.aspx

Я рекомендую переименовать - (трассировка) для _ (подчеркивание) или в любом случае вы хотите

= D