⚗️

WinAppSDK v1.6 Experimental-2

2024/07/13に公開

https://youtu.be/_Fgikgr7sno?si=Xyn_0N7ksWPnplbr

WinAppSKDのNuGetパッケージは、

の3つのリリースチャンネルで展開されていますが、今回はExperimentalを試す方法を紹介します。

WinAppSDK v1.6 Experimental-2 NuGetパッケージのインストール

  1. [NuGetパッケージマネージャー]を開きます。

  2. [プレリリースを含める]にチェックを入れます。

  3. [更新プログラム]に移動します。

  4. [Microsoft.WindowsAppSDK Prerelease]にチェックを入れます。

  5. [更新]をクリックし、要求に応じて表示されるダイアログで[OK]または[同意する]をクリックします。

Microsoft.Windows.SDKエラーの対応

WinAppSDK v1.6 Experimental-2をインストールすると以下のエラーメッセージが出力されるはずです。

Severity Code Description Project File Line Suppression State Details Error (active)
This version of the Windows App SDK requires 
Microsoft.Windows.SDK.NET.Ref 10.0.19041.35-preview;10.0.19041.35-preview or later, 
which can be added with:
<PropertyGroup>
    <WindowsSdkPackageVersion>10.0.19041.35-preview;10.0.19041.35-preview</WindowsSdkPackageVersion>
</PropertyGroup>

アプリのプロジェクトファイル(*.csproj)を開き、以下のブロックを追加します。

<PropertyGroup>
    <WindowsSdkPackageVersion>10.0.19041.35-preview</WindowsSdkPackageVersion>
</PropertyGroup>

WinAppSDK v1.6 Experimental-2の注目点

せっかくなのでこのバージョンの個人的な注目点に触れます。尚、あくまでもExperimentalチャンネルなので、Stableチャンネルでは内容が変更される可能性があります。

Unpackagedアプリの多言語対応

これまではPackagedアプリのみが多言語に対応していて、

Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "ja";

で設定します。また、この設定は保持され、次回のアプリ起動時は設定不要です。

このリリースでUnpackaged アプリも多言語に対応しています。

具体的には、

Microsoft.Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverride = "ja";

のように設定します。とてもややこしいですが、名前空間の先頭に"Microsoft"が追加されています。

特記事項

  • Microsoft.Windows.Globalization.ApplicationLanguages.PrimaryLanguageOverridePackagedでもUnpackagedアプリでも使うことができます。
  • Pacakgedアプリでは設定が保持されますが、Unpackagedアプリでは保持されません。

GitHub
https://github.com/AndrewKeepCoding/WinAppSDKExperimentalChannelDemo

TitleBarコントロールバグ修正

WinAppSDK v1.6 Experimental1で新規追加されたTitleBarコントロールには、とても簡単にAutoSuggestBoxのようなコントロールを並べることができるようになりましたが、それらのコントロールがフォーカスされない(入力できない)というバグがありました。今回のリリースではこのバグも修正されています。

2024年6月に実施されたWinUI Community Callでとても分かりやすいデモが紹介されいました。

https://www.youtube.com/watch?v=pExPo1VJ8Ks&t=1340s

Happy Coding!😊

GitHubで編集を提案

Discussion