1

私の目標は、テーブル本体内に特定の HTML を追加することです。

コードに関する注意事項:

  • tbody は本体を指します
  • 「Hello \n」は非常に単純な単語です。たとえば、追加したい
  • HTMLを別の変数に保存しました

例外が発生するたびに、編集が受け入れられなくなりました

var tbody = table.GetElementsByTagName("tbody")[0];
//tbody.InnerHtml = " </br> ";
foreach (DataGridViewRow row in dataGridView1.Rows)
{
    try
    {
        tbody.InnerHtml = tbody.InnerHtml + "Hello \n";
    }
    catch (Exception)
    {
    }
}

アップデート:

別の方法も試しましたが、結果は次のとおりです。

ここに画像の説明を入力

更新 2:

これはデスクトップ アプリケーションです。WebBrowser コントロールから取得したテーブルの innerHtml 値を変更したい

更新 3:

例外

System.NotSupportedException がキャッチされました Message=Property は、このタイプの HtmlElement ではサポートされていません。Source=System.Windows.Forms StackTrace: System.Windows.Forms.HtmlElement.set_InnerHtml(文字列値) at WebScraper.Form1.webBrowser2_DocumentCompleted(オブジェクト送信者、WebBrowserDocumentCompletedEventArgs e) E:\Companies-work\FreeLancer\WebScraper\WebScraper\ WebScraper\Form1.cs: 248 行目 InnerException:

更新 4:

tbody が null かどうかを確認する ここに画像の説明を入力

4

1 に答える 1

0

以下の行に示すように、tbody が HtmlElement の場合

var tbody = table.GetElementsByTagName("tbody")[0];

次に、プリントスクリーンに表示される行の代わりに、その InnerHtml プロパティを直接使用できます

このような

tbody.InnerHtml += "Hello \n";
于 2012-07-26T08:31:23.120 に答える