Windows アプリ SDK の最新のプレビュー チャネル リリース ノート

重要

プレビュー チャネルは、運用環境での使用ではサポートされていません。また、プレビュー リリースを使用するアプリを Microsoft Store に公開することはできません。

プレビュー チャネルには、開発の後期段階のプレビュー チャネル機能を備えた Windows アプリ SDK のリリースが含まれています。 プレビュー リリースには試験段階の機能と API は含まれていませんが、次の安定版リリースの前に破壊的変更が発生する可能性は残っています。

重要なリンク:

プレビュー チャネル リリース ノートのアーカイブ:

バージョン 1.6 Preview 2 (1.6.0-preview2)

これは、バージョン 1.6 のプレビュー チャネルの最新リリースです。

既存の Windows アプリ SDK 1.5 (安定したチャネルから) アプリでは、NuGet パッケージを 1.6.0-preview2 に更新できます (の「パッケージの更新」セクションを参照 NuGet パッケージ マネージャーを使用して Visual Studio でパッケージをインストールして管理します)。

更新されたランタイムと MSIX については、Windows App SDK 用のダウンロード ページを参照してください。

新機能

1.6-preview2 に必要な C# プロジェクトの変更

このリリースでは、 1.6-preview1 からの C# プロジェクト ガイダンスも必要です。

ネイティブ AOT のサポート

1.6-preview2 には、リリースされた Microsoft.Windows.CsWinRT バージョン 2.1.1 に更新し、ネイティブの Ahead-Of-Time コンパイルの信頼性を高めるために大幅な変更が含まれています。

Edge WebView2 SDK 統合の更新

このリリースでは、リリースされた 1.0.2651.64 バージョンの Microsoft.Web.WebView2 パッケージが参照されるようになりました。これは、1.6-preview1 で参照されているプレリリース バージョンで発生する問題を修正する必要があります。 1.6-preview1 で説明したように、アプリは必要に応じて、 Microsoft.Web.WebView2 パッケージの新しいバージョンを選択できるようになりました。

バグの修正

1.6-preview2 には、1.6-preview1 のリリース以降の次の新しい修正プログラムが含まれています。

  • .xaml で InfoBar.IsOpen を設定するときのクラッシュを修正しました。 詳細については、GitHub の問題 #8391 を参照してください。
  • マウスが WebView2 境界外に移動すると HTML 要素がポインター キャプチャを失う問題を修正しました。 詳細については、GitHub の問題 #8677 を参照してください。
  • ShouldConstrainToRootBounds=falseでポップアップにドラッグ アンド ドロップできない問題を修正しました。 詳細については、GitHub の問題 #9276 を参照してください。
  • PublishSingleFileが有効になっているとms-appx://参照が機能しない問題を修正しました。 詳細については、GitHub の問題 #9468 を参照してください。
  • 一部のバイナリでデバッガー シンボルが正しく動作しない問題を修正しました。 詳細については、GitHub の問題 #4633 を参照してください。
  • /permissive-使用時のビルド中断を修正しました。 詳細については、GitHub の問題 #4643 を参照してください。
  • パラメーターの名前変更による 1.6-preview1 での API の破壊的変更をいくつか修正しました。 詳細については、GitHub の問題 #4645 を参照してください。
  • 1.6-preview1 の一部のプロジェクト (特に Windows.UI.Text 型) によって、型の競合ビルドの中断が発生する問題を修正しました。 詳細については、GitHub の問題 #4646 を参照してください。
  • 1.6-preview1 のコントロール ライブラリによるリソース参照に関する問題を修正しました。 詳細については、GitHub の問題 #4649 を参照してください。
  • NavigationViewのサブクラス化時にクラッシュする可能性がある問題を修正しました。
  • テーブルのサイズをスクロールまたは縮小すると、 RichEditBox 内のテーブルの罫線が正しく消去されない問題を修正しました。
  • MediaTransportControlsからのポップアップの背景が完全に透明になる問題を修正しました。
  • WebView2 へのドラッグが失敗したり、100% 以外の表示スケール ファクターで間違った場所にドロップしたり、システム テキストのスケーリングが有効になったりする問題を修正しました。
  • MaxLength制限に達したために入力がブロックされたときに、TextBox/RichEditBoxがアクセシビリティ ツールに読み上げられない問題を修正しました。

バージョン 1.6 Preview 1 (1.6.0-preview1)

これは、バージョン 1.6 のプレビュー チャネルの最新リリースです。

既存の Windows アプリ SDK 1.5 (安定したチャネルから) アプリでは、Nuget パッケージを 1.6.0-preview1 に更新できます (の「パッケージの更新」セクションを参照 NuGet パッケージ マネージャーを使用して Visual Studio でパッケージをインストールして管理します)。

更新されたランタイムと MSIX については、Windows App SDK 用のダウンロード ページを参照してください。

新機能

Note

1.6-experimental1 でリリースした新しい TitleBar コントロールは、コミュニティのフィードバックを評価して応答する時間を増やすために、1.6 の非試験的ビルドではまだ使用できません。 私たちはここで多くの素晴らしい入力を受け取り、それに対処するために必要な時間を取ることを確認したいと思っています。

1.6-preview1 に必要な C# プロジェクトの変更

1.6-preview1 では、Windows アプリ SDKマネージド アプリには Microsoft.Windows.SDK.NET.Ref *.*.*.38 が必要です。これは、csproj ファイルの WindowsSdkPackageVersion を使用して指定できます。 次に例を示します。

<Project Sdk="Microsoft.NET.Sdk">
   <PropertyGroup>
       <OutputType>WinExe</OutputType>
       <TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>
       <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
       <WindowsSdkPackageVersion>10.0.22621.38</WindowsSdkPackageVersion>
   <PropertyGroup>
   ...

さらに、マネージド アプリWindows アプリ SDKMicrosoft.Windows.CsWinRT 2.1.1 (またはそれ以降) に更新する必要があります。

ネイティブ AOT のサポート

.NET PublishAot プロジェクト プロパティは、ネイティブの Ahead-Of-Time コンパイルでサポートされるようになりました。 ネイティブ AOT の詳細については、「 Native AOT のデプロイを参照してください。 AOT はトリミングのサポートに基づいて構築されているため、前に 1.6-experimental1 リリースで説明したトリミング関連のガイダンスの多くも適用されます。 詳細については、 Native AOT サポート を参照してください。

前述のように、C# プロジェクトには、 Microsoft.Windows.CsWinRT 2.1.1 以降へのパッケージ参照が必要です。このバージョンには、AOT セーフな ICustomPropertyProvider 実装が含まれています。 このサポートで使用される型は、partialと共にWinRT.GeneratedBindableCustomProperty属性でマークする必要があります。

変更された Edge WebView2 SDK の統合

Windows アプリ SDKは、Edge WebView2 SDK のハードコーディングされたバージョンを埋め込むのではなく、NuGet 参照として Edge WebView2 SDK を使用するようになりました。 新しいモデルを使用すると、アプリは、Windows アプリ SDKがビルドされたバージョンに限定されるのではなく、Microsoft.Web.WebView2 パッケージの新しいバージョンを選択できます。 新しいモデルでは、アプリが Edge WebView2 SDK も参照する NuGet パッケージを参照することもできます。 詳細については、GitHub の問題 #5689 を参照してください。

新しいパッケージ展開 API

パッケージ管理 API には、Is*ReadyOrNewerAvailable*()、EnsureReadyOptions.RegisterNewerIfAvailable、Is*Provisioned*()、IsPackageRegistrationPending()、いくつかのバグ修正など、いくつかの機能強化が用意されています。 詳細については、「 PackageManagement.mdPull Request #4453 」を参照してください。

TabView タブのティアアウトの改善

TabView では、新しい CanTearOutTabs モードがサポートされています。タブをドラッグしたり、新しいウィンドウにドラッグしたりするためのエクスペリエンスが強化されています。 この新しいオプションを有効にすると、タブドラッグは、ドラッグ中に新しいウィンドウがすぐに作成される Edge と Chrome のタブドラッグエクスペリエンスとよく似ています。これにより、ユーザーはウィンドウを画面の端にドラッグして、ウィンドウを最大化したり、1 つのスムーズな動きでスナップしたりできます。 この実装ではドラッグ アンド ドロップ API も使用されないため、これらの API の制限の影響を受けません。 特に、管理者として管理者特権で実行されているプロセスでは、タブの破棄がサポートされています。

その他の注目すべき変更点

  • 新しい ColorHelper.ToDisplayName() API を追加し、UWP からのギャップを埋める。
  • 新しい Microsoft.Windows.Globalization.ApplicationLanguages クラスが追加されました。これには、特に新しい PrimaryLanguageOverride 機能が含まれています。 詳細については、GitHub の問題 #4523 を参照してください。
  • 封印されていない ItemsWrapGrid。 これは下位互換性のある変更である必要があります。
  • PipsPager では、最初の項目とリスト 項目の間で折り返すことができる新しいモードがサポートされています。
  • RatingControl は、いくつかのハードコーディングされたスタイル プロパティをテーマ リソースに移動することで、よりカスタマイズ可能になりました。 これにより、アプリはこれらの値をオーバーライドして RatingControl の外観をより適切にカスタマイズできます。

既知の問題

  • デバッガーがすべての C++ 例外で中断するように設定されている場合、BCP47 (Windows グローバリゼーション) コードの起動時にノイズの多い例外のペアで中断されます。

バグの修正

  • カスタム タイトルバー シナリオの処理に関するいくつかの問題を修正しました。 詳細については、GitHub の問題 #7629#9670#9709 および #8431 を参照してください。
  • InfoBadge アイコンが表示されない問題を修正しました。 詳細については、GitHub の問題 #8176 を参照してください。
  • CommandBarFlyoutでアイコンが間違った位置に表示される場合がある問題を修正しました。 詳細については、GitHub の問題 #9409 を参照してください。
  • サブメニューを開いたり閉じたりするときのメニューのキーボード フォーカスに関する問題を修正しました。 詳細については、GitHub の問題 #9519 を参照してください。
  • アイテムをリサイクルするときに正しくないIsExpanded状態を使用するTreeViewに関する問題を修正しました。 詳細については、GitHub の問題 #9549 を参照してください。
  • ItemsRepeater.ItemTemplateで ElementName バインドを使用する場合の問題を修正しました。 詳細については、GitHub の問題 #9715 を参照してください。
  • ItemsRepeaterの最初の項目の位置が正しくない場合がある問題を修正しました。 詳細については、GitHub の問題 #9743 を参照してください。
  • InputNonClientPointerSource時に最小/最大/閉じるボタンへの入力が中断される問題を修正しました。 詳細については、GitHub の問題 #9749 を参照してください。
  • clang-cl で Microsoft.UI.Interop.h を使用するときのコンパイル エラーを修正しました。 詳細については、GitHub の問題 #9771 を参照してください。
  • CharacterReceived イベントがComboBox/TextBoxで動作しない問題を修正しました。 詳細については、GitHub の問題 #9786 を参照してください。
  • スケール ファクターが 100% とは異なるモニターで、 CanTearOutTabs のポインター入力動作が正しくない 1.6 実験ビルドの問題を修正しました。 詳細については、GitHub の問題 #9791 を参照してください。
  • 1.6-experimental2 ビルドで、一部の言語翻訳で ColorHelper.ToDisplayName()の文字エンコードの問題が発生する問題を修正しました。
  • NumberBoxが正しい前景色と背景色を使用していない 1.6-experimental1 の問題を修正しました。 詳細については、GitHub の問題 #9714 を参照してください。
  • 矢印キーとタブ キーで重複する KeyUp イベントが発生する問題を修正しました。 詳細については、GitHub の問題 #9399 を参照してください。
  • SystemSuspendStatusを取得するためにPowerManager.SystemSuspendStatusChanged イベントが使用できない問題を修正しました。 詳細については、GitHub の問題 #2833 を参照してください。
  • ウィンドウ内の唯一のコントロールである場合に、初期キーボード フォーカスが WebView2 に正しく与えられなかった問題を修正しました。
  • ExtendsContentIntoTitleBar=trueを使用しているときに、[最小]、[最大]、[閉じる] ボタンがUI オートメーションに正しく表示されず、音声アクセスでそれらのボタンの番号が表示されない問題を修正しました。
  • 予期しない再入が原因でロック チェックでアプリがクラッシュする可能性がある問題を修正しました。
  • ハイ コントラスト テーマに切り替えると、 Hyperlink の色が正しく更新されない問題を修正しました。
  • バックグラウンド ウィンドウで ListView のコレクションを変更すると、そのウィンドウがフォアグラウンドに誤って移動してフォーカスを取得する可能性がある問題を修正しました。
  • クラス ライブラリ プロジェクトの .xaml で AcrylicBrush.TintLuminosityOpacity を設定すると、型変換エラーが発生してクラッシュする 1.6-experimental1 の問題を修正しました。
  • ItemsRepeater.StartBringIntoViewを呼び出すとアイテムが消えることがある問題を修正しました。
  • ScrollViewer内のButtonをタッチしてドラッグすると、押された状態になる問題を修正しました。
  • 多くの新しい型とメンバーの情報が不足していた IntelliSense が更新されました。
  • ScrollViewerの空の領域をクリックすると、常にフォーカスがScrollViewerの最初のフォーカス可能なコントロールに移動し、そのコントロールをスクロールして表示される問題を修正しました。 詳細については、GitHub の問題 #597 を参照してください。
  • Window.Activated イベントが複数回発生することがある問題を修正しました。 詳細については、GitHub の問題 #7343 を参照してください。
  • NavigationViewItem.IsSelected プロパティを true に設定すると、展開時に子が表示されなくなる問題を修正しました。 詳細については、GitHub の問題 #7930 を参照してください。
  • MediaPlayerElementNoneまたはDropShadowエッジ効果でキャプションを正しく表示しない問題を修正しました。 詳細については、GitHub の問題 #7981 を参照してください。
  • ポップアップを表示するときに Flyout.ShowMode プロパティが使用されない問題を修正しました。 詳細については、GitHub の問題 #7987 を参照してください。
  • NumberBoxで丸めエラーが発生することがある問題を修正しました。 詳細については、GitHub の問題 #8780 を参照してください。
  • 古いバージョンの WinAppSDK に対してコンパイルされたライブラリを使用すると、型またはプロパティを見つけようとするエラーが発生する可能性がある問題を修正しました。 詳細については、GitHub の問題 #8810 を参照してください。
  • ウィンドウを起動するときに初期キーボード フォーカスが設定されない問題を修正しました。 詳細については、GitHub の問題 #8816 を参照してください。
  • FlyoutShowMode.TransientWithDismissOnPointerMoveAwayが初めて表示された後に機能しない問題を修正しました。 詳細については、GitHub の問題 #8896 を参照してください。
  • 一部のコントロールで、 Foreground プロパティと Background プロパティが正しくバインドされない問題を修正しました。 詳細については、「GitHub issue #7070#9020#9029#9083 および #9102 を参照してください。
  • VisualStateManagerセッターで使用されているThemeResourceがテーマの変更時に更新されない問題を修正しました。 ポップアップのこの一般的な影響を受けるコントロール。 詳細については、GitHub の問題 #9198 を参照してください。
  • WebViewがキーフォーカスを失い、余分なぼかし/フォーカス イベントやその他の問題が発生する問題を修正しました。 詳細については、GitHub の問題 #9288 を参照してください。
  • デバッグ出力 NavigationView バインド エラーが表示される可能性がある問題を修正しました。 詳細については、GitHub の問題 #9384 を参照してください。
  • 負のビューボックスを定義する SVG ファイルがレンダリングされなくなる問題を修正しました。 詳細については、GitHub の問題 #9415 を参照してください。
  • ItemsView.Layoutの向きを変更すると項目が削除される問題を修正しました。 詳細については、GitHub の問題 #9422 を参照してください。
  • ScrollViewをスクロールすると多くのデバッグ出力が生成される問題を修正しました。 詳細については、GitHub の問題 #9434 を参照してください。
  • MapContorl.InteractiveControlsVisibleが正常に動作しない問題を修正しました。 詳細については、GitHub の問題 #9486 を参照してください。
  • MapControl.MapElementClickイベントが正しく発生しない問題を修正しました。 詳細については、GitHub の問題 #9487 を参照してください。
  • 弱参照を使用する前に x:Bind が null をチェックせず、クラッシュする可能性がある問題を修正しました。 詳細については、GitHub の問題 #9551 を参照してください。
  • TeachingTip.Target プロパティを変更しても位置が正しく更新されない問題を修正しました。 詳細については、GitHub の問題 #9553 を参照してください。
  • WebView2 でドロップダウンが応答しない問題を修正しました。 詳細については、GitHub の問題 #9566 を参照してください。
  • GeometryGroup使用時のメモリ リークを修正しました。 詳細については、GitHub の問題 #9578 を参照してください。
  • ScrollView内のItemRepeaterから非常に多くの項目をスクロールすると、レンダリング フレームが空白になる可能性がある問題を修正しました。 詳細については、GitHub の問題 #9643 を参照してください。
  • SceneVisualが機能しない問題を修正しました。

1.6.0-preview1 の新しい API

バージョン 1.6-preview1 には、安定した 1.5 リリースと比較して、次の新しい API が含まれています。

Microsoft.UI

    ColorHelper
        ToDisplayName
Microsoft.UI.Input

    EnteredMoveSizeEventArgs
    EnteringMoveSizeEventArgs
    ExitedMoveSizeEventArgs
    InputNonClientPointerSource
        EnteredMoveSize
        EnteringMoveSize
        ExitedMoveSize
        WindowRectChanged
        WindowRectChanging

    MoveSizeOperation
    WindowRectChangedEventArgs
    WindowRectChangingEventArgs
Microsoft.UI.Xaml

    XamlRoot
        CoordinateConverter
Microsoft.UI.Xaml.Automation.Peers

    ScrollPresenterAutomationPeer
Microsoft.UI.Xaml.Controls

    PipsPager
        WrapMode
        WrapModeProperty

    PipsPagerWrapMode
    TabView
        CanTearOutTabs
        CanTearOutTabsProperty
        ExternalTornOutTabsDropped
        ExternalTornOutTabsDropping
        TabTearOutRequested
        TabTearOutWindowRequested

    TabViewExternalTornOutTabsDroppedEventArgs
    TabViewExternalTornOutTabsDroppingEventArgs
    TabViewTabTearOutRequestedEventArgs
    TabViewTabTearOutWindowRequestedEventArgs
Microsoft.Windows.Globalization

    ApplicationLanguages
Microsoft.Windows.Management.Deployment

    EnsureReadyOptions
        RegisterNewerIfAvailable

    PackageDeploymentFeature
    PackageDeploymentManager
        IsPackageDeploymentFeatureSupported
        IsPackageProvisioned
        IsPackageProvisionedByUri
        IsPackageReadyOrNewerAvailable
        IsPackageReadyOrNewerAvailableByUri
        IsPackageSetProvisioned
        IsPackageSetReadyOrNewerAvailable

    PackageReadyOrNewerAvailableStatus
Microsoft.Windows.Storage

    ApplicationData
    ApplicationDataContainer
    ApplicationDataContract
    ApplicationDataCreateDisposition
    ApplicationDataLocality