私はbtnRun
のボタンtimer1
を実行しています。 timer1
では、要素のidを取得し、この要素に "blah blah"のような値を挿入したいと考えています。`foreach`ループでブレークした後に値が失われるのはなぜですか?
効果があります。 しかし、2回目のクリックでbtnRun
、webBrowser2.Document
の値が失われました。 timer
が必要です。
btnRun
を何度もクリックするので、webBrowser2.Document
の値をいつも保持する方法はありますか?
private WebBrowser webBrowser2;
そして、私はリンクに行く別のボタン:
は、私が唯一のトップにアプリケーションを宣言します。
this.webBrowser2.Navigate( "http://example.com");
private void btnRun_Click(object sender, EventArgs e)
{
this.timer1.Start();
}
private void timer1_Tick(object sender, EventArgs e)
{
this.count++;
string str = "";
if (this.count >= this.line.Count<string>())
{
this.count = 0;
str = this.line[0];
}
else
{
try
{
str = this.line[this.count];
}
catch
{
}
}
int num = new Random().Next(0x186a0, 0x5f5e0ff);
try
{
string str2;
string str3;
HtmlElementCollection elementsByTagName;
int values = 0;
values = (str.Length - str.Split(new char[] { '*' })[1].Length) - 1;
str2 = "http://example.com" + str.Split(new char[] { '*' })[0].Substring(0, values) + "&text=*" + str.Split(new char[] { '*' })[1] + "&rand=" + num.ToString();
str3 = this.code(str2);
if (str3 == "")
return;
List<string> list = new List<string>();
MatchCollection matchs = Regex.Matches(str3, "(<a.*?>.*?</a>)", RegexOptions.Singleline);
foreach (Match match in matchs)
{
if (!list.Contains(match.Groups[1].Value))
{
string str5 = match.Groups[1].Value;
if (str5.Contains("javascript:foward_information"))
{
string[] strArray = str5.Split(new char[] { '\'' });
if (strArray[3] == "0")
{
string str6 = strArray[1];
this.timer1.Stop();
this.webBrowser2.Document.GetElementById("txtCode").InnerText = str6;
elementsByTagName = this.webBrowser2.Document.GetElementsByTagName("input");
foreach (HtmlElement element in elementsByTagName)
{
if (element.GetAttribute("id").Equals("cmdGit"))
{
element.InvokeMember("Click");
//var objWin = window.self;
//objWin.open('', '_self', '');
//objWin.close();
}
}
this.timer1.Stop();
}
}
}
}
}
catch(Exception ex)
{
throw ex;
}
}
どこからwebBrowser2にデータを入力していますか? – BugFinder
@BugFinder私の質問が更新されました。私は 'private WebBrowser webBrowser2'とリンクするナビゲーションだけを宣言します。 – vanloc
"foreachループでブレーク" - foreachループで何が壊れていますか?ループに途切れはありません。 – TomTom