DataGridの枠固定をするには?


ド新人  2006-05-26 08:15:29  No: 131592

開発デビューに向けてVB習得中の者ですがよろしくお願いします。
環境はWinXp・VB.NET2003で、現在はDataGridの使い方を勉強中です。
参考書(入門書)に載ってるような使い方は徐々に理解してきましたが
ふと、Excelのウインドウの固定のように先頭1行とか1列を固定して
スクロールさせることは出来ないかと思い立ったんですが可能でしょうか?
もし可能だとしても初心者には難易度が高いものでしょうか?


魔界の仮面弁士  2006-05-26 08:46:33  No: 131593

> 現在はDataGridの使い方を勉強中です。
どの DataGrid でしょう?
例えば、ASP.NET 用のそれとWindows Form 用のそれとでは、
全く別物ですし。

> 可能だとしても初心者には難易度が高いものでしょうか?
ひとくちに[初心者]と言っても、理解できるかは個人差があるでしょうから、
とりあえず、google等で
  『DataGrid 固定 VB.NET』
  『DataGrid 行固定』
  『DataGrid 列固定』
などといったキーワードで検索してみて、それらの内容を見た上で、
(自身にとっての)難易度を判断してみては如何でしょうか。


ド新人  2006-05-29 08:03:55  No: 131594

魔界の仮面弁士さんアドバイスありがとうございます。
ここ数日掲示板がなんか変な感じなんでお礼を書くのを戸惑ってました。
>どの DataGrid でしょう?
WindowsForm用です。新しいプロジェクト→Windowsアプリケーションで
テストフォームを作成して勉強しています。とりあえず何か目的がないと
勉強しづらいので恥ずかしい話ですがパチンコ/パチスロ(が好きでして…)の
一日分の日付、機種、投入、換金、収支、稼動、時給、店舗、コメント…etcを入力するTextBox等を用意して
その下に入力済みの既存データを表示する形でDataGridを使うのはどうだろうと思っています。
その時に1列目となる日付だけは固定(常に見える)状態で右へスクロールできるとカッコいいなと
思ったのですが、思っただけで実現可能なのか?と思い質問させていただきました。

今のところ初期表示でデータアダプタをFillして既存データを表示して
追加(NewRow)や修正でMDBをUpdateしたら一度データセットをクリアして
再度Fillすれば表示内容が更新される・・・・・かな??
みたいな感じで勉強(悪戦苦闘)しています。
その次として行の高さを変えたり列の幅を固定したり…質問したウインドウ枠の固定をしたり…と考えてみました。
前者は私でも比較的分かりやすいサンプルを書籍やサイトで見つけましたが
後者のウインドウ枠固定は見つけることができなかった次第です。
さっそく魔界の仮面弁士さんにアドバイスいただいたキーワードで検索して
まずは自分にとっての難易度を判断してみようと思います。

大変ご迷惑だと思いますが、他にも参考書籍・リンクなど何か
アドバイスがあればよろしくお願い致します。
それとこのような所に書込みするのは初めてで長い説明になり申し訳ありません。


ド新人  2006-06-05 06:04:36  No: 131595

報告が遅れて申し訳ありません。
限られた時間ではありましたが、この一週間色々調べてみました。
>理解できるかは個人差があるでしょうから
やはり現在の自分では辛いかな・・・というのが正直なところでした。
自分なりに調べた限りでは(間違いだらけかもしれませんが)WEBアプリ
(ASP.NET)であれば解決できた・・・?やりとりがあった掲示板もあるようですが
Winアプリに関しては代案として
「固定列と明細列とを二つのDataGridに分けてその二つのDataGridのスクロールを同期させる」
ようなことができるようですね。
スクロールイベントを検出するのにユーザコントロールをツールボックスに追加してそれを使う
などの書込みを見つけました。参考書のユーザコントロール、コンポーネントの章なども参考にして
サンプルなども探してみて挑戦してみようと思います。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加