MarketplaceHubTaskを使ってMarketplace Hubを開く

MarketplaceHubTaskは、アプリケーションからマーケットプレイスハブを起動するランチャーです。
MarketplaceHubTaskクラスのShowメソッドを実行すると、マーケットプレイスハブが起動します。

マーケットプレイスハブで扱うコンテンツは、アプリケーションとミュージックの2つに分類することが出来ます。どちらを表示するかを指定したい場合は、ContentTypeプロパティにパラメータを設定します。

ContentTypeプロパティにMarketplaceContentType.Applicationを指定して、Application Marketplaceを表示させてみましょう。

using System;
using System.Windows;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Tasks;
 
namespace MarketplaceHubTaskTest {
    public partial class MainPage : PhoneApplicationPage {
        // コンストラクター
        public MainPage() {
            InitializeComponent();
        }
 
        private void button2_Click(object sender, RoutedEventArgs e) {
            var task = new MarketplaceHubTask();
            try {
                // 表示コンテンツをアプリケーションに指定
                task.ContentType = MarketplaceContentType.Applications;
                task.Show();
            } catch (InvalidOperationException ex) {
                MessageBox.Show(ex.Message);
            }
        }
    }
}

ミュージックで起動するには、ContentTypeプロパティへMarketplaceContentType.Musicを設定するだけです。

// 表示コンテンツをアプリケーションに指定
task.ContentType = MarketplaceContentType.Applications;

の部分を

task.ContentType = MarketplaceContentType.Music;

に差し替え、Showメソッドの実行することで、Zune marketplaceを起動する事が出来ます。ただしBingMapsDirectionsTaskと同様に表示言語設定を日本にしている場合は、2011年12月時点では起動に失敗してしまうようです。

参照