Archive for 2012年7月

Windows Phone SDK 7.1 を Windows 8 Release Previewにインストールする方法

2012年7月31日

Windows Phone SDK 7.1 をダウンロードします。

Windows Phone SDK には以下が同梱されています。

  • Microsoft Visual Studio 2010 Express for Windows Phone
  • Windows Phone Emulator
  • Windows Phone SDK 7.1 Assemblies
  • Silverlight 4 SDK and DRT
  • Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0
  • Microsoft Expression Blend SDK for Windows Phone 7
  • Microsoft Expression Blend SDK for Windows Phone OS 7.1
  • WCF Data Services Client for Windows Phone
  • Microsoft Advertising SDK for Windows Phone

インストールを実行すると、Windows Phone SDK 7.1 に対して、[プログラム互換性アシスタント]が表示され、互換性に問題があるという警告ダイアログが表示されます。

image

ここで、[オンラインでヘルプを表示する]を選択すると、Aaron Stebner’s WebLog が表示され、英文ですが、ワークアラウンドが説明されています。ただし、XNA を中心とした説明になっています。XNA Game Studio が必要ない場合は、次の手順でWindows 8 RPにWindows Phone SDK 7.1 をインストール可能です。

[ヘルプ情報を使用せずにプログラムを実行する] を選択します。すると、また[プログラム互換性アシスタント]が表示されます。そこで、もう一度、[ヘルプ情報を使用せずにプルグラムを実行する] を選択します。

すると、セットアップが開始し、次の[ライセンス条項]が表示されます。

image

[同意する]を選択すると、インストールが始まります。

image

途中まで進んだところで、[XNA Game Studio 4.0 and below Microsoft] に対して、、[プログラム互換性アシスタント]が表示され、互換性に問題があるという警告ダイアログが表示されます。

image

ここで、[ヘルプ情報を使用せずにプログラムを実行する] を選択します。

インストールを継続すると、次の[Windows Phone SDK 7.1 – 日本語セットアップ]ダイアログが表示され、[修復または再インストールをもう一度実行して下さい。]というメッセージが表示されます。失敗したコンポーネントは、つぎの3つです。

  • Microsoft XNA Game Studio 4.0 Refresh
  • Windows Phone SDK 7.1 Extensions for XNA Game Studio 4.0
  • XNA Game Studio 4.0 Refresh 言語パック

image

[終了]ボタンを押すと再起動が要求されます。

image

再起動すると、[Microsoft Visual Studio 2010 Express for Windows Phone] を利用できるようになります。

しかし、簡単な Windows Phone アプリをビルドすると、次のエラーが発生します。

image

エラー    1    ターゲット “GetCopyToOutputDirectoryContentProjectItems” はプロジェクト内に存在しません。    PhoneApp1

この問題を回避するには、Aaron Stebner’s WebLog にしたがって、まず、Games for Windows Marketplace を http://www.xbox.com/en-US/LIVE/PC/DownloadClient よりインストールします。

image

次に、もう一度、Windows Phone SDK 7.1 のインストーラを起動し、[修復またはインストール]を選択します。

image

すると、次回はインストールが成功します。

image

そこで、再度簡単な Windows Phone アプリをビルドすると、今回はビルドが成功します。しかし、エミュレータで実行すると、次のエラーが発生します。

image

この回避策は、Windows Phone SDK 7.1.1 更新プログラム (Japanese) をインストールします。

image

以上で、Windows 8 RP 上で、Windows Phone 7.5の開発が可能になります。

cmd ウィンドウで utf-8 を出力するには

2012年7月30日

cmd ウィンドウは、規定でコードページが932 (shift jis) になっています。プログラムなどで、utf-8 の文字コードを出力するには、cmdウィンドウのコードページを utf-8 にする必要があります。

cmd ウィンドウを起動して、chcp 65001 を実行すると、コードページが65001(utf=8) となります。

しかし、このままだと日本語が文字化けして、正しく表示されない場合があります。

image

その時は、cmd ウィンドウのプロパティで、フォントをMS ゴシックに明示的に変更します。

image

 

image

なお、Windows のコードページの対応表は次の通りです。

http://msdn.microsoft.com/en-us/library/dd317756(VS.85).aspx

Windows 8 でListView と GridView

2012年7月1日

環境 Windows 8 RP + Visual Studio 2012 RC

クイック スタート: ListView コントロールと GridView コントロールの追加

 リストまたはグリッド内の項目をグループ化する方法

デフォルトでは、IsSourceGrouped=”true” となっていて、AllGroups の中身に対して列挙されます。

<CollectionViewSource
    x:Name=”groupedItemsViewSource”
    Source=”{Binding Groups}”
    IsSourceGrouped=”true”
    ItemsPath=”TopItems”
    d:Source=”{Binding AllGroups, Source={d:DesignInstance Type=data:RssDataSource, IsDesignTimeCreatable=True}}”/>

image

これを一段上のAllGroup に対して列挙したい場合は、IsSourceGrouped を false に設定します。

protected override void LoadState(Object navigationParameter, Dictionary<String, Object> pageState)
{
    var sampleDataGroups = RssDataSource.GetGroups(“AllGroups”);
    this.DefaultViewModel[“Groups”] = sampleDataGroups;
}

<CollectionViewSource
    x:Name=”groupedItemsViewSource”
    Source=”{Binding Groups}”
    IsSourceGrouped=”false”
    ItemsPath=”TopItems”
    d:Source=”{Binding AllGroups, Source={d:DesignInstance Type=data:RssDataSource, IsDesignTimeCreatable=True}}”/>

image

難しい・・・

Windows 8 Button Style

2012年7月1日

Windows 8 RP + Visual Studio 2012 RC

XAMLの例

<Button x:Name=”backButton” Click=”GoBack” IsEnabled=”{Binding Frame.CanGoBack, ElementName=pageRoot}” Style=”{StaticResource BackButtonStyle}”/>

StandardStyles.xaml に定義されている Button Style の StaticResource です。

  • TextButtonStyle
  • TextRadioButtonStyle
  • AppBarButtonStyle
  • SkipBackAppBarButtonStyle
  • PlayAppBarButtonStyle
  • PauseAppBarButtonStyle
  • EditAppBarButtonStyle
  • SaveAppBarButtonStyle
  • DeleteAppBarButtonStyle
  • DiscardAppBarButtonStyle
  • RemoveAppBarButtonStyle
  • AddAppBarButtonStyle
  • NoAppBarButtonStyle
  • YesAppBarButtonStyle
  • MoreAppBarButtonStyle
  • RedoAppBarButtonStyle
  • UndoAppBarButtonStyle
  • HomeAppBarButtonStyle
  • OutAppBarButtonStyle
  • NextAppBarButtonStyle
  • PreviousAppBarButtonStyle
  • FavoriteAppBarButtonStyle
  • PhotoAppBarButtonStyle
  • SettingsAppBarButtonStyle
  • VideoAppBarButtonStyle
  • RefreshAppBarButtonStyle
  • DownloadAppBarButtonStyle
  • SearchAppBarButtonStyle
  • HelpAppBarButtonStyle
  • UploadAppBarButtonStyle
  • PinAppBarButtonStyle
  • UnpinAppBarButtonStyle
  • BackButtonStyle

image

image

image

image

image