【发布时间】:2012-03-22 21:45:27
【问题描述】:
我正在使用此代码来检查 webBrowser1 中的文本,但我收到了错误“指定的转换无效”。为string docText = webBrowser1.Document.Body.InnerText;。任何想法为什么?可能是因为我正在从另一个线程访问 webBrowser 吗?谢谢。
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void backgroundWorker1_DoWork(object sender, DoWorkEventArgs e)
{
string docText = webBrowser1.Document.Body.InnerText;
if (docText == "Hello")
{
MessageBox.Show("Alerted!");
}
}
private void timer1_Tick(object sender, EventArgs e)
{
backgroundWorker1.RunWorkerAsync();
}
【问题讨论】:
-
你能发布异常的堆栈跟踪吗?
-
根据the MSDN,
Document属性是object,因此您需要在取消引用之前对其进行转换以获得Body.InnerText。你错过了一些代码吗? -
@ChrisF 这不应该让编译器抱怨,而不是在运行代码时引发异常吗?
-
@FredrikMörk - 是的,这就是为什么我问 OP 是否遗漏了他的问题中的一些代码。