Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » SQL Anywhere サーバー プログラミング » .NET アプリケーションプログラミング » SQL Anywhere .NET データプロバイダーの使用 » チュートリアル:Visual Studio を使用したシンプルな .NET データベースアプリケーションの開発

 

レッスン 2:同期データコントロールの追加

このチュートリアルは、レッスン 1:テーブルビューアーの作成のチュートリアルの続きです。

完全なアプリケーションは、ADO.NET プロジェクトの %SQLANYSAMP12%\SQLAnywhere\ADO.NET\SimpleViewer\SimpleViewer.sln にあります。

このチュートリアルでは、前のチュートリアルで作成したフォームにデータグリッドコントロールを追加します。このコントロールは、結果セット内のナビゲーションに合わせて内容を自動的に更新します。

 ♦ データグリッドコントロールの追加
  1. Visual Studio を起動し、MySimpleViewer プロジェクトをロードします。このプロジェクトはレッスン 1:テーブルビューアーの作成で作成したものです。

  2. [データ ソース] ウィンドウで [DataSet1] を右クリックし、[デザイナで DataSet を編集] をクリックします。

  3. [データセット デザイナ] ウィンドウの空白領域を右クリックし、[追加] » [TableAdapter] をクリックします。

  4. TableAdapter 構成ウィザードで次の作業を実行します。

    1. [データ接続の選択] ページで、[次へ] をクリックします。

    2. [コマンドの種類を選択します] ページで、[SQL ステートメントを使用する] をクリックし、[次へ] をクリックします。

    3. [SQL ステートメントの入力] ページで、[クエリ ビルダ] をクリックします。

    4. [テーブルの追加] ウィンドウの [ビュー] タブをクリックし、[ViewSalesOrders] をクリックして [追加] をクリックします。

    5. [閉じる] をクリックして [テーブルの追加] ウィンドウを閉じます。

  5. ウィンドウのすべてのセクションが表示されるように、[クエリ ビルダ] ウィンドウを拡大します。

    1. すべてのチェックボックスが表示されるように、[ViewSalesOrders] ウィンドウを拡大します。

    2. [Region] をクリックします。

    3. [Quantity] をクリックします。

    4. [ProductID] をクリックします。

    5. [ViewSalesOrders] ウィンドウの下のグリッドで、[ProductID] カラムの [出力] の下にあるチェックボックスをオフにします。

    6. [ProductID] カラムで、[フィルター] セルに疑問符 (?) を入力します。これで ProductID の WHERE 句が生成されます。

    次のような SQL クエリが作成されました。

    SELECT   Region, Quantity
    FROM     GROUPO.ViewSalesOrders
    WHERE    (ProductID = :Param1)
  6. この SQL クエリを次のように変更します。

    1. QuantitySUM(Quantity) AS TotalSales に変更します。

    2. GROUP BY Region を WHERE 句の後に続くクエリの末尾に追加します。

    変更した SQL クエリは次のようになります。

    SELECT   Region, SUM(Quantity) as TotalSales
    FROM     GROUPO.ViewSalesOrders
    WHERE    (ProductID = :Param1)
    GROUP BY Region
  7. [OK] をクリックします。

  8. [完了] をクリックします。

    ViewSalesOrders という新しい TableAdapter[データセット デザイナ] ウィンドウに追加されました。

  9. フォームデザインタブ (Form1) をクリックします。

    • フォームを右方向にドラッグして拡大し、新しいコントロールの領域を確保します。

  10. [データソース] ウィンドウで [ViewSalesOrders] を展開します。

    1. [ViewSalesOrders] をクリックし、ドロップダウンリストから [DataGridView] をクリックします。

    2. [ViewSalesOrders] をクリックして、フォーム (Form1) にドラッグします。

    Form1 にデータグリッドビューのコントロールが組み込まれます。

    データグリッドビューのコントロールがフォームに表示されます。

  11. プロジェクトをビルドし、実行します。

    • [ビルド] » [ソリューションのビルド] をクリックします。

    • [デバッグ] » [デバッグの開始] をクリックします。

    • [Param1] テキストボックスに、300 などの製品 ID を入力して [Fill] をクリックします。

      入力した製品 ID の販売概要が、データグリッドビューに地域別に表示されます。

      Products テーブルのローと特定製品の販売概要が表示されたアプリケーション。

    フォームのもう一方のコントロールを使用して、結果セットのローを移動することもできます。

    ただし、2 つのコントロールが互いに同期された状態になっていることが理想的です。これを実現するための手順を次に示します。

  12. アプリケーションを終了してプロジェクトを保存します。

  13. Fill ストリップは不要なのでフォームから削除します。

    • デザインフォーム (Form1) で、[Fill] の右側にある Fill ストリップを右クリックして、[削除] をクリックします。

      Fill ストリップがフォームから削除されます。

  14. 2 つのコントロールを次のようにして同期します。

    1. デザインフォーム (Form1) で [ID] テキストボックスを右クリックし、[プロパティ] をクリックします。

    2. [イベント] ボタン (電球で表示される) をクリックします。

    3. [TextChanged] イベントが見つかるまでスクロールダウンします。

    4. [TextChanged] をクリックし、ドロップダウンリストから [FillToolStripButton_Click] をクリックします。Visual Basic を使用している場合は、[FillToolStripButton_Click] というイベントです。

    5. [FillToolStripButton_Click] をダブルクリックして、fillToolStripButton_Click イベントハンドラーに関するフォームのコードウィンドウを開きます。

    6. param1ToolStripTextBox への参照を検索し、これを iDTextBox に変更します。Visual Basic を使用している場合は、IDTextBox というテキストボックスです。

    7. プロジェクトを再度ビルドし、実行します。

  15. アプリケーションフォームに表示されるナビゲーションコントロールが 1 つだけになりました。

    • 結果セットを移動すると、それに合わせて現在の製品の販売概要が更新され、データグリッドビューに地域ごとに表示されます。

      Products テーブルのローと地域別の販売概要が表示されたアプリケーション。

    これで、結果セットの移動に合わせて内容を自動的に更新するコントロールが追加されました。

  16. アプリケーションを終了してプロジェクトを保存します。

これらのチュートリアルでは、強力なツールである Microsoft Visual Studio、サーバーエクスプローラー、および SQL Anywhere .NET データプロバイダーを組み合わせて使用して、データベースアプリケーションを作成する方法を学習しました。