Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
DataGridViewについて勉強しています
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=30535#CommentId84171
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
のの
 (社会人)
投稿日時
2020/9/8 15:36:17
魔界の仮面弁士様
ご返信ありがとうございます。
>そういう方法を取ることもできますが、既に DataTable にデータを抽出済みであれば、
そこから絞り込むという手も使えます。
すでにデーターはデーターソースからドラック&ドロップで
TableDataGridViewにはTableBindingSourceが割り当てられています。
>既に DataSet/DataTable に取得済みの内容のうち、一部の行だけを表示させたい場合には、
BindingSource の Filter プロパティ あるいは DataView の RowFilter プロパティを使います。
BindingSourceはTableBindingSourceと一緒なのでしょうか?
なんかアイコンが一緒なので、、なまえが違うだけですか?
自分の割り当てはTableDataGridViewにTableBindingSourceという割り当てがされていて
品番という列に該当する値(テキストボックス入力)があった場合
Private Sub Button3_Click_1(sender As Object, e As EventArgs) Handles Button3.Click
Dim strText As String = TextBox1.Text
TableBindingSource.Filter = strText
みたいな感じでいいのでしょうか?(ハンドルされてない例外が出てきました)
>Visual Studio のサーバーエクスプローラーからドラッグ & ドロップで
フォームにテーブルを貼った場合も、DataGridView と共に BindingSource が貼られますね。
とはいえ、現在 BindingSource を現在使っておらず、
DataSource に DataSet や DataTable を直接割り当てていたとしても、
必ずしも BindingSource を使わなければいけないわけではありません
ソート処理やフィルター処理のためには、DataTable の DefaultView プロパティが返す
DataView オブジェクトの Sort / RowFilter プロパティを使って同じことができるためです。
いろんなやり方があるのですね!
おもったより奥がふかいです。。
なお、DataGridView の DataSource を用いている場合には、
> Data = Me.DataGridView1(c.ColumnIndex, c.RowIndex).Value
のような、行番号・列番号に依存したコードを書くことはお奨めしません。
なるほど、、
はじめてDataGridViewをつかうので気を付けたいとおもいます
コード参考にさせていただきます。
よろしくおねがいします。