Windows Phone のウォレット項目の追加タスクを使用する方法

2013/12/05

対象: Windows Phone 8 | Windows Phone OS 7.1

ウォレット項目の追加タスクを使用してウォレット アプリケーションを起動すると、ユーザーは指定した項目を自分のウォレットに追加できます。ユーザーがタスクを完了すると、イベントが発生し、イベント ハンドラーは項目が正常に追加されたかどうかを示す TaskResult 値を受け取ります。これはアプリで PaymentInstrument または WalletTransactionItem を追加する唯一の方法です。Deal を追加するには、SaveAsync() メソッドを使用します。ウォレットを使用するアプリケーションの作成方法の詳細については、「Windows Phone 8 のウォレット」を参照してください。

セレクターを使用することによって、Windows Phone プラットフォーム全体で一貫性のあるユーザー エクスペリエンスを提供できます。詳細については、「Windows Phone のランチャーとセレクター」を参照してください。

ウォレット項目の追加タスクを使用するには

  1. 次のステートメントをコードに追加します。

    
    using Microsoft.Phone.Tasks;
    
    
    
    
    using Microsoft.Phone.Wallet;
    using System.Windows.Media.Imaging;
    
    
    
  2. タスク オブジェクトを宣言します。ページ スコープが必要であるため、ページ内でコンストラクターの前に宣言します。

    
    AddWalletItemTask addWalletItemTask = new AddWalletItemTask();
    
    
    
  3. 次のコードをページ コンストラクターに追加します。このコードはタスク オブジェクトを初期化し、ユーザーがタスクを完了した後に実行するメソッドを識別します。

    
    addWalletItemTask.Completed += addWalletItemTask_Completed;
    
    
    
  4. WalletItem から継承するサポートされているオブジェクトの 1 つをインスタンス化し、AddWalletItemTask オブジェクトの項目プロパティを設定します。このセレクターの場合は、PaymentInstrument オブジェクトと WalletTransactionItem オブジェクトのみがサポートされています。AddWalletItemTask.Show を呼び出す前に次のプロパティを設定する必要があります。そうしないと、InvalidOperationException がスローされます。

    ボタンのクリック イベントなど、アプリケーションの必要な場所に次のコードを追加します。この手順をテストするには、ページのコンストラクターにこのコードを配置します。これはタスクを起動するコードです。

    
    
    
                PaymentInstrument card = new PaymentInstrument("FabrikamBankCard");
                card.DisplayName = "Fabrikam Bank";
                card.CustomerName = "Chris Preston";
                card.ExpirationDate = new DateTime(2014, 12, 15);
                card.PaymentInstrumentKinds = PaymentInstrumentKinds.CreditAndDebit;
    
                BitmapImage bmp = new BitmapImage(new Uri("/images/BrandImageSmall.png", UriKind.RelativeOrAbsolute));
                bmp.CreateOptions = BitmapCreateOptions.None;
                card.Logo99x99 = bmp;
    
                bmp = new BitmapImage(new Uri("/images/BrandImageMedium.png", UriKind.RelativeOrAbsolute));
                bmp.CreateOptions = BitmapCreateOptions.None;
                card.Logo159x159 = bmp;
    
                bmp = new BitmapImage(new Uri("/images/BrandImageLarge.png", UriKind.RelativeOrAbsolute));
                bmp.CreateOptions = BitmapCreateOptions.None;
                card.Logo336x336 = bmp;           
    
                addWalletItemTask.Item = card;
    
                addWalletItemTask.Show();
    
    
    
    
  5. 完了したイベント ハンドラーのコードをページに追加します。このコードは、ユーザーがタスクを完了した後に実行されます。結果は、連絡先の名前とアドレスを含む AddWalletItemResult オブジェクトです。

    
    void addWalletItemTask_Completed(object sender, AddWalletItemResult e)
    {
        if (e.TaskResult == TaskResult.OK)
        {
            MessageBox.Show(e.Item.Id + " was added to your Wallet");
        } 
    }
    
    
    

表示:
© 2014 Microsoft