此主题尚未评级 - 评价此主题

如何使用 Windows Phone 的添加 Wallet 项任务

2013/12/5

适用于: Windows Phone 8 | Windows Phone OS 7.1

使用添加 Wallet 项任务,以启动 Wallet 应用程序并允许用户向其 Wallet 添加提供的项。当用户完成此任务时,会引发一个事件,并且事件处理程序将收到一个 TaskResult 值,指示是否成功地将项添加到 Wallet。这是应用添加 PaymentInstrumentWalletTransactionItem 的唯一方法。要添加 Deal,请使用 SaveAsync 方法。有关创建使用 Wallet 的应用程序的更多信息,请参见 Windows Phone 8 的 Wallet

使用选择器,可以帮助您在 Windows Phone 平台中提供一致的用户体验。有关更多信息,请参见 Windows Phone 启动器和选择器

使用添加 Wallet 项任务的步骤

  1. 将以下语句添加到您的代码中。

    
    Imports Microsoft.Phone.Tasks
    
    
    
    
    Imports Microsoft.Phone.Wallet
    Imports System.Windows.Media.Imaging
    
    
    
  2. 声明任务对象。它必须具有页面范围,因此应在页面中的构造函数之前声明它。

    
    Dim addWalletItemTask As AddWalletItemTask = New AddWalletItemTask()
    
    
    
  3. 将以下代码添加到您的页面构造函数中。此代码初始化任务对象,并标识要在用户完成任务后运行的方法。

    
    AddHandler addWalletItemTask.Completed, AddressOf addWalletItemTask_Completed
    
    
    
  4. 实例化继承自 WalletItem 的支持的对象之一,并设置 AddWalletItemTask 对象的 Item 属性。此选择器仅支持 PaymentInstrumentWalletTransactionItem 对象。调用 AddWalletItemTask.Show 之前必须设置以下属性,否则将抛出 InvalidOperationException 异常。

    在应用程序中的所需位置添加以下代码,例如按键点击事件中。为了测试此过程,可以将该代码放置在页面构造函数中。以下是启动任务的代码。

    
    
    
            Dim card As PaymentInstrument = New PaymentInstrument("FabrikamBankCard")
            card.DisplayName = "Fabrikam Bank"
            card.CustomerName = "Chris Preston"
            card.ExpirationDate = New DateTime(2014, 12, 15)
            card.PaymentInstrumentKinds = PaymentInstrumentKinds.CreditAndDebit
    
            Dim bmp As BitmapImage = 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
    
            card.Logo99x99 = New BitmapImage(New Uri("/images/BrandImageSmall.png", UriKind.RelativeOrAbsolute))
            card.Logo159x159 = New BitmapImage(New Uri("/images/BrandImageMedium.png", UriKind.RelativeOrAbsolute))
            card.Logo336x336 = New BitmapImage(New Uri("/images/BrandImageLarge.png", UriKind.RelativeOrAbsolute))
    
            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");
        } 
    }
    
    
    

本文是否对您有所帮助?
(1500 个剩余字符)
感谢您的反馈
显示:
© 2014 Microsoft. 版权所有。