これは私のコードです:
this.Invoke(new MethodInvoker(delegate {
label13.Text = e.failedUrls + doneWebPages.ToString();
}));
結果: 01,02,03,04.....09,111
たとえば、e.failedUrls が 1 で、doneWebPages が 22 の場合、代わりに label13 に合計 23 が表示され、122 が表示されます。
なにが問題ですか ?
これは私のコードです:
this.Invoke(new MethodInvoker(delegate {
label13.Text = e.failedUrls + doneWebPages.ToString();
}));
結果: 01,02,03,04.....09,111
たとえば、e.failedUrls が 1 で、doneWebPages が 22 の場合、代わりに label13 に合計 23 が表示され、122 が表示されます。
なにが問題ですか ?
数値と文字列を追加しているためです。
e.failedUrls
あなたの説明から判断すると、数字のようです。doneWebPages.ToString()
は文字列です。だから、5 + "13"
等しい"513"
。
これを修正するには.ToString()
、2 番目のオペランドから呼び出しを削除します。次に、 のようなものが得られます。5 + 13
これは に等しくなり18
ます。
文字列を連結しています。Int32.Parse()
、またはを使用して最初に Int32 に変換します。Int32.TryParse()
その理由は、2 つの文字列値を追加しているためです。代わりに 2 つの整数値を追加する必要があります
label13.Text = int.Parse(e.failedUrls.ToString() + int.Parse( doneWebPages.ToString())
この方法で問題が解決します