「.NET DataGrid ソートのイベント」の編集履歴(バックアップ)一覧に戻る
.NET DataGrid ソートのイベント - (2006/06/21 (水) 16:02:22) のソース
<p> DataGridでキー一覧を表示し、選択行のデータを表示するアプリを作成。<br> DataGridのタイトル行をクリックすると勝手に一覧がソートされるのだが、選択行は変わらない=選択データが変わる。</p> <p> DataGridにはなぜかソートに関するイベントがない。いろいろ調べた結果、これで解決した。<br> </p> <p> ' フォームロード(初期化)<br> Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load<br> ' CurrentManagerのCurrentChangedイベント追加.(選択セル変更やソートのイベント)<br> Dim cm As CurrencyManager = CType(DataGrid1.BindingContext(DataGrid1.DataSource), CurrencyManager)<br> AddHandler cm.CurrentChanged, AddressOf CurrencyManager_CurrentChanged<br> cm.Position = 0</p> <p> ShowData((0)<br> End Sub<br> <br> ' 選択セル変更・ソート<br> Private Sub CurrencyManager_CurrentChanged(ByVal sender As Object, ByVal e As System.EventArgs)<br> ShowData((DataGrid1.CurrentCell.RowNumber)<br> End Sub</p> <p> '選択データ表示<br> Private Sub ShowData(ByVal index As Integer)<br> <br> Dim cm As CurrencyManager = CType(DataGrid1.BindingContext(DataGrid1.DataSource), CurrencyManager)<br> Dim dv As DataView = CType(cm.List, DataView)</p> <p> MsgBox(dv.Item(index)(0));</p> <p> End Sub<br> <br> <br> 参考<br> <a href= "http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=11209&forum=7">http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=11209&forum=7</a></p>