2

その時点で表示する必要があるものに基づいて非表示または表示される多くのHTMLテーブルで設計されたページがあります。これらのテーブルにはさまざまなASP.NET標準のWebコントロールがあり、通常はチェックボックス、ラジオボタンリスト、テキスト入力ボックス、ラベルなどがあり、すべて正常に機能します。

データグリッドを行の1つ(タグの下)に配置しようとすると、エラーメッセージが表示されます。

パーサーエラーメッセージ:System.Web.UI.HtmlControls.HtmlTableCellCollectionには、「System.Web.UI.HtmlControls.HtmlTableCell」タイプのアイテムが必要です。「MIIRS:DATAGRID」のタイプは「MIIRS.WebControls.DataGrid」です。

(MIIRS DataGridはDataGridクラスを継承し、不思議に思う場合はそれにマイナーな機能を追加します)

ページを再設計してDataGridをテーブルの外に配置できることはわかっていますが、これを回避する方法を見つけることができれば、それを実行したいと思います。

だから私の質問は:HtmlTableにDataGrid、GridView、またはそれにネストされた同様のオブジェクトを受け入れるようにする方法はありますか?そして、aspテーブルタグに変更すると、それが受け入れられるようになりますか?または、テーブルを分割する必要性を最小限に抑えるための、またはシステムを私が持っている方法で共食いするための他の創造的なソリューションはありますか?:)

4

3 に答える 3

2

ネストされたテーブルとデータグリッド? ああ、おそらくそれほど複雑にする必要はありません。UI の目標を達成するためのより簡単な方法を見つけることができると確信しています。

それか.. 逃げる、速く激しく走る!手が震えるまで走る

于 2009-03-12T18:36:15.280 に答える
1

質問に対する1つの可能な答えを見つけました。タグと CSS を使用すると、HTML の領域を非表示にしたり表示したりできます。そのため、Datagrid をテーブルに入れることはできませんでしたが、テーブルの外に置いて、単純に表示または非表示にすることができました。これをテーブルの「中央」に配置する場合、テーブルを 2 つの部分 (前後) に分割する必要があります。

これは、ページ上で物事を同じように保つために、これまでに見つけた最良の方法です。ただし、特定のコントロールを HtmlTable 行に配置できないのはなぜなのか、まだ疑問に思っています。

于 2009-02-10T18:18:59.543 に答える
0

このウォークスルーを見てみたいと思うかもしれません...

http://www.codeproject.com/KB/webforms/EditNestedDataGrid.aspx

于 2009-03-12T18:30:29.100 に答える