7

HtmlTableコントロールの使用から Web ベースのコントロールにいくつかのコードを変換したところ、クラスにTable加えて. ここで半分読んだコメントに基づいて、行がこれらの1つである場合、出力されたHTMLの要素に配置されるという愚かな仮定をしました。そうではありませんでした。TableRowTableHeaderRowthead

これが機能しなかったとき、私はよく見TableHeaderRowて、実際のコードがないように見え、のTableSectionプロパティがTableRowa かどうかを気にしないことに気付きましたTableHeaderRow

では、このタイプのポイントは何ですか?実際には、これは TableRow クラスとまったく同じであり、行TableSectionであることを伝えるためにプロパティを設定する必要があるようです。thead

これに適したユースケースのシナリオはありますか? 確かに思いつかない…

明確化のために編集

私の調査では、リファクタリングを使用して関連するコードを調べました。これは、新しいTableHeaderRowものから派生しているように見えますTableRowが、実際には何も実装していないと私が判断した方法です。

Tablea を出力するかどうかを決定する際のレンダリングでは、純粋にプロパティtheadを見ているようです。TableSection行の実際のタイプが何であるかは気にしません。行のタイプが異なる場合とはまったく異なる動作をする、どこを見ても1行のコードを見つけることができません。

それがどのように異なるかの実際の実際の例を探しています。ドキュメントの参照はありがたいのですが、私が見ているコードと実際には一致していないようです。

4

2 に答える 2

4

私は同じことを疑問に思いました。ASP.NET テーブル ヘッダー行の作成ページを見たとき 、TableSection プロパティを適切に設定していないことに気付きました。

hRow.TableSection = Web.UI.WebControls.TableRowSection.TableHeader

<thead>出力htmlに表示される要素を作成しました。

于 2014-10-03T03:33:26.287 に答える
2

このMSDNエントリによると:

このクラスは、画面サイズが制限されたデバイスでのテーブルの表示をサポートします。これらのデバイスでは、多数の列と行を含むテーブルを複数のページにわたってレンダリングする必要があります。TableHeaderRow を Table コントロールに追加すると、テーブルのビューを表示する各ページの最初の行としてレンダリングされる見出し行を指定できます。

TableRowこの種のサポートを公開していないことから、私は推測します。

于 2012-11-15T12:24:07.357 に答える