- - PR -
DataGrid(画面)上のデータ取得方法
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2004-09-01 14:54
お世話になります。
ご存知の方がいらしゃいましたら、教えてください。 画面上のグリッドに、表示しているデータを 表示順に取り出す方法がよくわかりません。 @グリッド上に、データを表示 印刷バッチ 伝票枚数 伝票種別 ------------------------------------------ 20040831_001 100 佐川急便 20040831_002 2 佐川急便 20040901_001 2 宅急便 A画面上(グリッドをクリック)で、ソート 印刷バッチ 伝票枚数 伝票種別 ------------------------------------------ 20040901_001 2 宅急便 20040831_002 2 佐川急便 20040831_001 100 佐川急便 B印刷ボタンで、上から順番に印刷 Aの状態をデータテーブルへコピー(下記のように記述) Dim objDataSource As DataTable objDataSource = DirectCast(dgdDataList.DataSource, DataTable) データソースの中を確認したが、ソート前の状態がデータテーブルに セットされる。 記述したが、画面上でソートする前の状態で印刷されます。 記述の仕方がわるいのかもしれません。 よろしくお願いします。 |
|
投稿日時: 2004-09-02 08:02
NEKO 様
さかもと と申します。 ご質問の件ですが、詳細はうまく説明できませんが・・・。 @でグリッド上に、データを表示(Fillメソッドか何か) でデータをセットする時に印刷したい順(ソートして) でセットをしておかないといけないはずです。 Aでグリッドをクリックしてのソートは簡単に言うと 見た目だけの問題であって、データがどの順序で セットされているかどうかは、@でソート済みの結果 をセットするかどうかが重要です。 つまり、印刷時にどの順序で印刷を掛けるかを設定 したい場合は、そのソート順でデータを再セットする 必要があります。 なんだか的を得ない返答ですいません・・・。 |
|
投稿日時: 2004-09-02 12:45
DataTableのDefaultViewプロパティで実現可能です。
|
|
投稿日時: 2004-09-02 17:49
どうもありがとうございます。
下記のように書き換えてみました。 修正前 objDataSource = DirectCast(dgdDataList.DataSource, DataTable) objDataView = New DataView(objDataSource) 修正後 Dim objCurrencyManager As CurrencyManager objCurrencyManager = DirectCast(Me.BindingContext(dgdDataList.DataSource), CurrencyManager) objDataView = DirectCast(objCurrencyManager.List, DataView) |
1