- PR -

【ASP.NET】動的に配置したTable(HTMLコントロール)の特定行を非表示にしたいのですが?

1
投稿者投稿内容
haruka
常連さん
会議室デビュー日: 2003/12/09
投稿数: 36
投稿日時: 2004-01-14 12:33
Haruka@初心者といいます。いつも参考にさせて頂いています。
ASP.NET(VB.NET)でアプリケーションの開発を行っています。
わからないことがあります。

画面上には、100行10列のTable(HTMLコントロール)を配置し、行・列分
だけ、静的なコントロール(テキストボックス、ドロップダウンリストコントロールなど)を
配置しています。
DBを参照し、レコードが50件あった場合は、50行表示し、51行目以降は
非表示にしたいと思っているのですが、どのようにすればよいかわかりません。
可能でしょうか?
同じようなことをされている方がいらっしゃいましたらご指南ください。
宜しくお願いします。


もともとはTable(Webサーバコントロール)を配置し、動的にコントロール
を追加することにより実現しようと思いましたが、ビューステートの管理が
うまくいかず断念し、静的にコントロールを配置し、表示/非表示の切り替え
により制御をしたいとおもいましてこのようなことをやっています。
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-01-14 12:59
貼り付けたTableをサーバサイドコントロールにして
コード:

Table1.Rows(行のIndex).Visible = False
    ↑コントロール名


で、非表示にできます。

ただ、通常、そのような用途にはDataGridを使用します。
何か利用できない事情があるのでしょうか。

[ メッセージ編集済み 編集者: NAL-6295 編集日時 2004-01-14 13:00 ]
haruka
常連さん
会議室デビュー日: 2003/12/09
投稿数: 36
投稿日時: 2004-01-14 13:17
NAL-6295さん、レスありがとうございます。

>ただ、通常、そのような用途にはDataGridを使用します。
>何か利用できない事情があるのでしょうか。

そうですね、DataGridを使用すればよいのでしょうけど、
利用したことがないので、いまやろうとしていることが
できるかどうか不安なのと、あまり時間もないので、
簡易で原始的な方法がBESTかと思いまして。

・DataGridに表示される情報が各種テーブルを参照しなければ
 ならないので、プログラムでがりがりやったほうがいいかなと。
・DataGridにX列とY列があって、それぞれDropDownList
 コントロールを配置したいのですが、連動のさせ方がわからない。

そんなこんなです。(^^
気を使っていただきましてありがとうございます。
ほむら
ぬし
会議室デビュー日: 2003/02/28
投稿数: 583
お住まい・勤務地: 東京都
投稿日時: 2004-01-14 13:29
ども、ほむらです。
ふと思ったのですが、

>DBを参照し、レコードが50件あった場合は、50行表示し、51行目以降は
>非表示にしたいと思っているのですが、どのようにすればよいかわかりません。

DBから持ってくる時点で50件に絞ってはいけないのでしょうか?
haruka
常連さん
会議室デビュー日: 2003/12/09
投稿数: 36
投稿日時: 2004-01-14 14:07
どうも遥です。レスありがとうございます。

>DBから持ってくる時点で50件に絞ってはいけないのでしょうか?

とは一体どういうことでしょうか?
よければ教えてください。

DBから持ってくる時点で、昇順で100レコード(max100行なので)
抽出して表示し、101レコード目以降は、ページングの制御により
表示させようかなと思ってます。
ページングの制御は、自分で実装するつもりです。
ほむら
ぬし
会議室デビュー日: 2003/02/28
投稿数: 583
お住まい・勤務地: 東京都
投稿日時: 2004-01-14 14:22
ども、ほむらです。
やぶへびをつついてしまったかもしれませんが^^;;;;

SQLの話です。DBの種類が無いので何ともいえませんが
oracleならば rawnum() とか SQLServerならばTOPとかを使用して
抜き出す段階または、または、データをフェッチする段階で制限してはということです。

たとえば。SQLServerならば
SELECT TOP 50 FIELD1, FIELD2, FIELD3....
FROM T1 ORDER BY FIELD1 ASC
とか。。

#もしかしたら役に立たないかもしれないけど
#http://search.microsoft.com/search/results.aspx?st=b&qu=PageSize&view=ja-jp
#ページ制御関係の検索結果です

#追記
Jitta氏フォローありがとうございます^^
そういえば、スレッドディレクトリなる便利なものもありましたね^^;;;

[ メッセージ編集済み 編集者: ほむら 編集日時 2004-01-14 15:22 ]
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-01-14 14:45
「[ASP.NET]DataGridコントロール内のドロップダウンリストに動的に項目を追加するには?」
http://www.atmarkit.co.jp/fdotnet/dotnettips/090dropdowndg/dropdowndg.html

「[ASP.NET]DataGridコントロールで大量のデータをページ表示するには?」
http://www.atmarkit.co.jp/fdotnet/dotnettips/073custompg/custompg.html

「[ASP.NET]DataGridコントロールの各セルにアクセスするには?」
http://www.atmarkit.co.jp/fdotnet/dotnettips/064dgcell/dgcell.html

「[ASP.NET]DataGridコントロールでページ表示するには?」
http://www.atmarkit.co.jp/fdotnet/dotnettips/068pagingdg/pagingdg.html

「[ASP.NET]DataGridコントロールでページ番号によりページ移動を行うには?」
http://www.atmarkit.co.jp/fdotnet/dotnettips/069numericpg/numericpg.html

「[ASP.NET]DataGridコントロールのページ移動ボタンをカスタマイズするには?」
http://www.atmarkit.co.jp/fdotnet/dotnettips/072modpager/modpager.html


こういうところ?
haruka
常連さん
会議室デビュー日: 2003/12/09
投稿数: 36
投稿日時: 2004-01-14 17:28
遥です。Jittaさん、いつもありがとうございます。

なんて感謝したらよいのでしょう。
参考にして作っていきたいと思います。

やはりDataGridを利用するほうがよいのでしょうね。
Tipsもいっぱいでてますし。
現在は、技術評論者の『プロがつくった!ASP/ADO.NET実践サンプル集』
を購入してつくっていこうかなと思っています。

ありがとうございます!
1

スキルアップ/キャリアアップ(JOB@IT)