C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[3]: DataGridViewのソートに関して


(過去ログ 52 を表示中)

[トピック内 5 記事 (1 - 5 表示)]  << 0 >>

■28647 / inTopicNo.1)  DataGridViewのソートに関して
  
□投稿者/ あべし (1回)-(2008/11/28(Fri) 14:50:14)

分類:[C#] 

開発環境;Microsoft Visual Studio 2008 評価版
使用言語;C#

お世話になります。
WindowsフォームにDataGridViewを配置し、
フォームロード時にDataGridViewの日付列(DATE)を昇順ソートした形で表示したいのですが、
どうもうまくいかなく投稿させて頂きました。

ネットで調べた以下のソースコードで検証した結果、
どうも削除ボタンでソートしているように思います。
DataGridViewColumn sortColumn = this.dataGridView1.CurrentCell.OwningColumn;

上記の一文でカラム名などを指定できればと思っているのですが、
何か良い案がありましたら宜しくご教授お願い致します。

dataGridView1のカラム3つは以下(左から順に記載)
●削除
name;DELETE
soatmode;NotSortable
columntype;DataGridViewButtonColumn

●日付
name;DATE
soatmode;Automatic
columntype;DataGridViewTextBoxColumn

●収支
name;MONEY
soatmode;Automatic
columntype;DataGridViewTextBoxColumn

引用返信 編集キー/
■28648 / inTopicNo.2)  Re[1]: DataGridViewのソートに関して
□投稿者/ .SHO (225回)-(2008/11/28(Fri) 15:09:37)
No28647 (あべし さん) に返信

> DataGridViewColumn sortColumn = this.dataGridView1.CurrentCell.OwningColumn;

CurrentCell が、最初のDELETEセルだからです。
DATEセルを sortColumn に設定してあげましょう。
引用返信 編集キー/
■28649 / inTopicNo.3)  Re[2]: DataGridViewのソートに関して
□投稿者/ あべし (2回)-(2008/11/28(Fri) 15:18:26)
No28648 (.SHO さん) に返信
> ■No28647 (あべし さん) に返信
>
>>DataGridViewColumn sortColumn = this.dataGridView1.CurrentCell.OwningColumn;
>
> CurrentCell が、最初のDELETEセルだからです。
> DATEセルを sortColumn に設定してあげましょう。

.SHOさんありがとうございました。
以下で解決しました!!!
DataGridViewColumn sortColumn = this.dataGridView1.Columns["DATE"];
解決済み
引用返信 編集キー/
■28651 / inTopicNo.4)  Re[1]: DataGridViewのソートに関して
□投稿者/ カドルドエグ (55回)-(2008/11/28(Fri) 15:18:42)
2008/11/28(Fri) 15:20:55 編集(投稿者)
2008/11/28(Fri) 15:19:17 編集(投稿者)

No28647 (あべし さん) に返信
> WindowsフォームにDataGridViewを配置し、
> フォームロード時にDataGridViewの日付列(DATE)を昇順ソートした形で表示したいのですが、
「ロード時のみ」で且つデータベースから呼び出してるのであれば、
SQLに「ORDER BY」入れておいて呼び出せば、
DataGridView側の設定(あともしBindingSourceを使用していたらその設定も)を
いじらずともソートされている状態表示されると思います。

# ↓.SHOさんと被ってしまいますがせっかくかいたので置いておきます^^;
> ネットで調べた以下のソースコードで検証した結果、
> どうも削除ボタンでソートしているように思います。
> DataGridViewColumn sortColumn = this.dataGridView1.CurrentCell.OwningColumn;
ソートの方法はSortedColumnプロパティへの設定でしょうか。
それを仮に前提とした上でこのコードですと、
「ロード時の」現在時点のカラムをSortedColumnに設定していることになります。
カラムは左から「削除」「日付」「収支」であり、
(どこでプロパティを設定しているかにもよりますが)
DataGridViewは左から順に読み込みなり開始するので、「削除」列を基準にソートされるのは
ある意味正しい結果かと。。

なので単純にdataGridView1のSortedColumnには、「日付」カラムを設定すればよいかと。
解決済み
引用返信 編集キー/
■28657 / inTopicNo.5)  Re[3]: DataGridViewのソートに関して
□投稿者/ あべし (3回)-(2008/11/28(Fri) 15:48:11)
カドルドエグさんへ

返信ありがとうございました。無事解決しましたのでご報告します。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -