アプリケーション ツール バーへのシェル コマンドの追加

このレッスンには、アプリケーション ツール バーにコマンドを追加する方法、およびランタイムにコマンドをクリックすると実行されるコードの記述方法が示されています。コマンドはパラメーター化されたクエリを実行し、結果は検索画面に表示されます。

シェル コマンドの追加

前のレッスンで、画面のコマンド バーに表示されるコマンドを追加します。別の画面を開く、データにフィルターを適用する、メールを送信するなど、他のタスクを実行するようにツール バー ボタンをプログラムすることもできます。

パラメーター化されたクエリを追加するには

  1. ソリューション エクスプローラー[顧客] ノードを選択します。

  2. [プロジェクト] メニューの [クエリの追加] をクリックします。

  3. [プロパティ] ウィンドウで、[名前] フィールドに「MatchCustomer」と入力します。

  4. クエリ デザイナーで、[フィルターの追加] をクリックします。

  5. 2 番目のドロップダウン リストで [ContactName] を選択します。

  6. 4 番目のドロップダウン リストで [パラメーター] を選択します。

  7. 最後のドロップダウン リストで [新規追加] をクリックします。

    String 型の ContactName という名前の新しいパラメーターが、クエリ エディター[パラメーター] セクションに追加されます。

検索画面を追加するには

  1. ツール バーの [画面の追加] をクリックします。

  2. [新しい画面の追加] ダイアログ ボックスの [画面テンプレートの選択] リストで、[データ検索画面] を選択します。

  3. [画面名] フィールドで、「SearchCustomer」と入力します。

  4. [画面データ] リストで、[– MatchCustomer] を選択し、[OK] をクリックします。

  5. 画面デザイナーで、[CustomerContactName] ノードを選択します。

  6. [プロパティ] ウィンドウで、[パラメーターである] プロパティを選択します。

アプリケーション ツール バーにコマンドを追加するには

  1. ソリューション エクスプローラーで、[ContactList] をダブルクリックします。

  2. 画面デザイナーで、[画面コマンド バー] ノードを展開します。

  3. [追加] リストで [新しいボタン] を選択します。

    [ボタンの追加] ダイアログ ボックスが表示されます。

  4. [ボタンの追加] ダイアログ ボックスで、[新しいメソッド] を選択し、[名前] ボックスに「Find」と入力し、[OK] をクリックします。

  5. [プロパティ] ウィンドウで [説明] を選択して、「選択した連絡先を顧客リストで検索する」と入力します。

  6. [イメージの選択] リンクをクリックします。

  7. [イメージの選択] ダイアログ ボックスで、[インポート] をクリックします。

  8. [開く] ダイアログ ボックスで、写真のあるディレクトリに移動して、写真を選択し、[開く] をクリックします。

  9. [OK] をクリックして、[イメージの選択] ダイアログ ボックスを閉じます。

  10. 左ペインで [Find] を選択します。

  11. [プロパティ] ウィンドウで、[Execute コードの編集] をクリックします。

    コード エディターが表示され、Find_Execute() メソッドが表示されます。

  12. Find_Execute() メソッドに次のコードを追加します。

    Application.ShowSearchCustomer(Contacts.SelectedItem.ContactName)
    
    Application.ShowSearchCustomer(Contacts.SelectedItem.ContactName);
    

    このコードは、先ほど作成したボタンをユーザーがクリックすると、[ShowSearchCustomer] 画面を表示します。

  13. F5 キーを押してアプリケーションを実行します。

    新しいコマンドを検証するには、[連絡先] リストから [ハワード スナイダー] を選択して、[検索] をクリックします。

    検索結果

    [SearchCustomer] 画面が表示され、五大湖食品市場のデータが表示されるはずです。[会社] 列で [五大湖食品市場] をクリックすると、[顧客の詳細] 画面が表示されます。

よく見る

このレッスンでは、[ContactName] パラメーターに一致する [顧客] を返すためにパラメーター化されたクエリを作成する方法と、クエリに基づいて検索画面を作成する方法を示しました。実行中のアプリケーションのナビゲーション メニュー[SearchCustomer] 画面は表示されません。パラメーター化されたクエリに基づいた画面は、コマンドを実行することによってのみ開くことができ、メニューに追加することはできません。

その後、レッスンでは、[ContactList] 画面にコマンドを追加する方法、表示名説明、および画像を加える方法、およびコマンド ボタンをクリックするたびに実行されるコードを追加する方法を示しました。コードは ShowSearchCustomer メソッドを実行し、[SearchCustomer] 画面が表示されます。かっこで囲まれたコードはメソッドのパラメーターで、この場合は、[連絡先] コレクションで選択された項目の [ContactName] です。

[連絡先リスト] 画面が選択された場合にのみ、アプリケーション ツール バーにコマンドが表示されます。ツール バーに追加されるコマンドは画面固有のものであるため、画面ごとに個別のコマンドを作成する必要があります。

次の手順

次のレッスンでは、ナビゲーション メニューに項目を追加する方法を学びます。

次のレッスン: メニュー項目のカスタマイズ

参照

処理手順

方法: Silverlight の画面にカスタム コマンドを追加する

概念

LightSwitch でのコードの記述

その他の技術情報

メニューとコマンドの作成