クエリの追加
今度は、「年代」で並び変えたクエリを追加で作成し、最初に作成したクエリと切り替えて使用できるようにします。
新しいクエリの追加
クエリを追加するには、BindingSourceオブジェクトのタスクトレイから「クエリの追加」を選びます。「検索条件」ビルダが起動しますので、クエリに名前を付け、クエリビルダを使って新しいクエリを作成します。
![](http://cz-cdn.shoeisha.jp/static/images/article/2457/2457_14.gif)
自動的に、ToolStripコントロールがフォームに追加され、追加したクエリを実行するボタンが表示されます。
また、このボタンのClickイベントハンドラに、クエリを実行するコードが組み込まれます(以下、読みやすいように整形しています)。
Private Sub SortYearToolStripButton_Click(ByVal sender As _ System.Object, ByVal e As System.EventArgs) _ Handles SortYearToolStripButton.Click Try Me.銘柄データTableAdapter.SortYear( _ Me.WinelistDataSet.銘柄データ) Catch ex As System.Exception System.Windows.Forms.MessageBox.Show(ex.Message) End Try End Sub
private void sortYearToolStripButton_Click(object sender, EventArgs e) { try { this.銘柄データTableAdapter.SortYear( this.winelistDataSet.銘柄データ); } catch (System.Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); } }
最初のクエリの実行
年代によるソートを元に戻すために、ToolStripコントロールにラベルを追加して、最初に作成したクエリを実行できるようにします。また、年代によるソートのボタンの名前も変えておきます。
最初に作成したクエリを実行するには、TableAdapterオブジェクトの実行メソッド名を、フォームのLoadイベントハンドラで実行したメソッド名「Fill」に変えるだけです。
Private Sub ToolStripLabel1_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles ToolStripLabel1.Click Try Me.銘柄データTableAdapter.Fill(Me.WinelistDataSet.銘柄データ) Catch ex As System.Exception System.Windows.Forms.MessageBox.Show(ex.Message) End Try End Sub
private void toolStripButton1_Click(object sender, EventArgs e) { try { this.銘柄データTableAdapter.Fill( this.winelistDataSet.銘柄データ); } catch (System.Exception ex) { System.Windows.Forms.MessageBox.Show(ex.Message); } }
まとめ
見た目もカラフルなリストボックスは、使っていても楽しいものです。
VS標準のリストボックスではできない機能をまだまだ持っているGcListBoxコンポーネントは、質を問われる時代になったアプリケーション開発にもってこいのコンポーネントです。