0

C#からHTMLページを生成します。HTMLページにはたくさんの要素があります。それらのすべては絶対的な位置を持っています。

これらの要素の1つはテーブルです。このテーブルは、double[]を保持するオブジェクトを表します。すべてのdouble値は、新しい行の新しいセルです。

double []を繰り返して、テーブルを作成します。

for (int i = 0; i < dbl.Length; i++)
{
  htmlTextWriter.RenderBeginTag(HtmlTextWriterTag.Tr);
  htmlTextWriter.RenderBeginTag(HtmlTextWriterTag.Td);
  htmlTextWriter.Write(dbl[i]);
  htmlTextWriter.RenderEndTag(); // td
  htmlTextWriter.RenderEndTag(); // tr
}

テーブルに非常に多くの要素があり、このテーブルの下にある要素と交差する場合は、この問題に対応する必要があります。

つまり、このテーブルの長さを知る必要があります。

もちろん、生成するセルの数はわかっています。また、BorderSize、Padding、Marginなども知っています。

しかし、2つの問題があります。まず、FontSize、FontFamily、FontWeightは知っていますが、これらの情報を数学計算に含める方法がわかりません。

第二に、ブラウザごとに実際のサイズも異なると思います。ダミーのテーブルを作成し、1つの画面の高さで、OperaとFirefoxの間にすでに1つのセルの違いがあることを認識しました。

だから私はC#では実際の高さしか概算できないと思いますか?!

私が持っている次のアイデアは、JavaScriptをHTMLに含めることです。JavaScriptの経験はありませんが、私のアプローチは、テーブルを見つけてサイズを読み取ることです。次に、すべての要素を反復処理して、すべての重複を見つけます。

私の質問は次のとおりです。

  • 私の考察は本当ですか、それともいくつかの側面を見逃していますか?
  • 私のアプローチは正しい方法ですか(C#ではおおよその結果しか得られませんか?!、JavaScript私がやりたいことが本当に可能かどうかはわかりません)
  • 私が今見ない他の可能性はありますか?

ヒント:JavaSript以外のスクリプト言語は私のソリューションには適用できません。JavaScript私は本当に必要な場合にのみ使用します。

4

2 に答える 2

1

c# ではなく、javascript が答えだと思います。 http://api.jquery.com/height/

于 2011-09-29T08:39:42.743 に答える
-1

C# で高さを計算することはできません。これを行うには、javascript を使用してください。

于 2011-09-29T08:39:21.757 に答える