0

これは私のコードです:

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 が表示されます。

なにが問題ですか ?

4

9 に答える 9

2

数値と文字列を追加しているためです。

  • e.failedUrlsあなたの説明から判断すると、数字のようです。
  • doneWebPages.ToString()は文字列です。

だから、5 + "13"等しい"513"

これを修正するには.ToString()、2 番目のオペランドから呼び出しを削除します。次に、 のようなものが得られます。5 + 13これは に等しくなり18ます。

于 2013-06-21T14:00:34.557 に答える
1

文字列を連結しています。Int32.Parse()、またはを使用して最初に Int32 に変換します。Int32.TryParse()

于 2013-06-21T14:00:36.420 に答える
0

その理由は、2 つの文字列値を追加しているためです。代わりに 2 つの整数値を追加する必要があります

label13.Text = int.Parse(e.failedUrls.ToString() + int.Parse( doneWebPages.ToString()) 

この方法で問題が解決します

于 2013-06-21T14:15:56.607 に答える