| title | Latest experimental channel release notes for the Windows App SDK 1.7 |
|---|---|
| description | Learn about the latest experimental releases of the Windows App SDK 1.7. |
| ms.topic | release-notes |
| ms.date | 07/14/2025 |
| keywords | windows win32, windows app development, project reunion, experimental, windows app sdk |
| ms.localizationpriority | medium |
Important
The experimental channel is not supported for use in production environments, and apps that use the experimental releases cannot be published to the Microsoft Store.
The experimental channel includes releases of the Windows App SDK with experimental channel features in early stages of development. APIs for experimental features have the Experimental attribute. If you call an experimental API in your code, you will receive a build-time warning. All APIs in the experimental channel are subject to extensive revisions and breaking changes. Experimental features and APIs may be removed from subsequent releases at any time.
Important links:
- If you'd like to upgrade an existing app from an older version of the Windows App SDK to a newer version, see Update existing projects to the latest release of the Windows App SDK.
- For documentation on experimental releases, see Install tools for preview and experimental channels of the Windows App SDK.
Latest experimental channel release:
Latest stable channel release:
Important
The underlying ML models required for these APIs currently require your device to be running the latest Windows 11 Insider Preview Build on the Dev Channel. Additionally, these APIs require your device to be a Copilot+ PC. See Copilot+ PCs Developer Guide to learn more about these devices. APIs will throw an exception when called on devices lacking the necessary support.
Windows AI Foundry offers several AI-powered features and APIs for you to easily, efficiently, and responsibly use on-device AI models in your Windows apps. In this release we are making available several scenario focused APIs for you to leverage powerful capabilities without the need to find, run, or optimize your own Machine Learning (ML) models.
Learn more about responsible development practices used during Windows AI APIs development that you can also apply as you create AI-assisted features in the Developing Responsible Generative AI Applications and Features on Windows guidance.
With Phi Silica, Microsoft's most powerful NPU-tuned local language model, you can generate text responses to broad user prompts with built in content moderation. You can also specify it to perform common tasks like summarizing a piece of text, rewriting a piece of text for clarity, and converting text to a table format. Phi Silica is optimized for efficiency and performance on Windows Copilot+ PCs devices while still offering many of the capabilities found in Large Language Models (LLMs).
See Get started with Phi Silica in the Windows App SDK and API ref for Phi Silica in the Windows App SDK for more information.
Text recognition, also known as optical character recognition (OCR), APIs in Windows AI Foundry can detect and extract text within images and convert it into machine readable character streams. These APIs can identify characters, words, lines, polygonal text boundaries, and provide confidence levels for each match. The set of AI-assisted APIs in Windows AI Foundry benefit from NPU-assisted acceleration to perform faster and more accurately than the legacy Windows.Media.Ocr.OcrEngine APIs.
See Get Started with Text Recognition (OCR) in the Windows App SDK and API ref for AI-backed Text Recognition (OCR) in the Windows App SDK for more information.
Using the 'ImageScaler' APIs you can increase the sharpness and clarity of an image and upscale the image up to 8x its original resolution.
See What can I do with Image Super Resolution? and API ref for AI imaging features in the Windows App SDK to get started.
The Image Description APIs can be used to generate a text description of an image. The APIs are configurable to specify the length and type of the text description. Image descriptions may include a short caption or a long description for users with accessibility needs.
Note
When calling ImageDescriptionGenerator.DescribeAsync() in a Debug build, an error may occur that can be mitigated by continuing the build in Visual Studio.
See What can I do with Image Description? and API ref for AI imaging features in the Windows App SDK to learn more.
Using Image Segmentation APIs you can identify specific objects within an image. The model takes both an image and a "hints" object and returns a mask of the identified object.
See What can I do with Image Segmentation? and API ref for AI imaging features in the Windows App SDK to get started.
New AppWindow APIs make it easier to control your app windows and create a great experience. New capabilities include using EnablePlacementPersistence to automatically remember the size and position of your windows, using SetTaskBarIcon and SetTitleBarIcon to independently set the taskbar and titlebar icons, using AppWindowTitleBar.PreferredTheme to set the light/dark theme of the titlebar, and using OverlappedPresenter.PreferredMinimum/MaximumSize to set a minimum or maximum size for the window.
- The missing C# projections for the new
BadgeNotificationshave been added so these APIs are now usable from C#. - A class registration issue which prevented using the new
AppNotificationConferencingConfigAPI has been fixed. Note that this enhanced user experience for video or audio calling in notifications is only available on the latest Windows Insider releases of Windows.
This release includes the following new and modified experimental APIs compared to 1.7-experimental2:
Microsoft.Graphics.Imaging
ImageBuffer
ImageBufferContract
ImageObjectExtractor
ImageObjectExtractorContract
ImageObjectExtractorHint
ImageScaler
ImageScalerContract
PixelFormatMicrosoft.UI.Content
ChildSiteLink
AutomationOption
ProcessKeyboardInput
ProcessPointerInput
ContentAutomationOptions
ContentIsland
AutomationOption
ProcessKeyboardInput
ProcessPointerInput
ContentSite
ProcessKeyboardInput
ProcessPointerInput
ContentSiteView
AutomationOption
ProcessKeyboardInput
ProcessPointerInput
DesktopPopupSiteBridge
AutomationOption
IContentSiteAutomation
AutomationOption
IContentSiteInput
ReadOnlyDesktopSiteBridge
ProcessKeyboardInput
ProcessPointerInputMicrosoft.UI.Windowing
AppWindow
EnablePlacementPersistence
EnablePlacementPersistence
GetCurrentPlacement
SaveCurrentPlacement
SetPlacement
SetTaskBarIcon
SetTaskBarIcon
SetTitleBarIcon
SetTitleBarIcon
AppWindowTitleBar
PreferredTheme
OverlappedPresenter
PreferredMaximumSize
PreferredMinimumSize
SetPreferredBounds
PlacementPersistenceBehaviorFlags
TitleBarThemeMicrosoft.Windows.AI.ContentModeration
ContentFilterOptions
ContentFilterOptionsContract
ImageContentFilterSeverity
SeverityLevel
TextContentFilterSeverityMicrosoft.Windows.AI.Generative
ImageDescriptionContract
ImageDescriptionGenerator
ImageDescriptionScenario
LanguageModel
LanguageModelContext
LanguageModelContract
LanguageModelOptions
LanguageModelResponse
LanguageModelResponseStatus
LanguageModelSkillMicrosoft.Windows.SemanticSearch
EmbeddingVector
SemanticSearchContractMicrosoft.Windows.Vision
BoundingBox
DetectedLineStyle
OrientationDetectionOptions
RecognizedLine
RecognizedLineStyle
RecognizedText
RecognizedWord
TextRecognitionContract
TextRecognizer
TextRecognizerOptionsMicrosoft.Windows.Workloads
WorkloadPriority
WorkloadsContractA new BackgroundTaskBuilder API enables registering background tasks for Windows App SDK apps. For more info, see GitHub #4831.
New badge notification support allows showing a number or glyph badge on your app in the taskbar. For more info, see GitHub #4926.
Important
In this release, the C# projections are missing for the new BadgeNotifications APIs, which prevents using them from C#. The APIs are available in C++.
Video or audio calling can have an enhanced user experience in notifications. For more info, see GitHub #4783.
Important
This functionality is only available on the latest Windows Insider releases of Windows.
RichEditBoxnow supports math mode, viaRichEditTextDocument.SetMathModeandRichEditTextDocument.SetMath.- New
CompatibilityOptionssupport will allow more control over how servicing changes affect apps. For more info, see GitHub #4976.
This release includes the following new and modified experimental APIs:
Microsoft.Security.Authentication.OAuth
AuthFailure
AuthRequestParams
AuthRequestResult
AuthResponse
ClientAuthentication
CodeChallengeMethodKind
OAuth2Manager
OAuthContract
TokenFailure
TokenFailureKind
TokenRequestParams
TokenRequestResult
TokenResponseMicrosoft.UI.Composition
CompositionNotificationDeferral
CompositionProjectedShadow
MaxOpacity
MinOpacity
OpacityFalloff
CompositionProjectedShadowCaster
AncestorClip
Mask
CompositionProjectedShadowDrawOrder
CompositionProjectedShadowReceiver
DrawOrder
MaskMicrosoft.UI.Composition.Experimental
ExpCompositionVisualSurface
ExpExpressionNotificationProperty
IExpCompositionPropertyChanged
IExpCompositionPropertyChangedListener
IExpCompositor
IExpVisualMicrosoft.UI.Content
AutomationTreeOptions
ChildSiteLink
ContentAppWindowBridge
ContentDisplayOrientations
ContentEnvironmentStateChangedEventArgs
DidDisplayScaleChange
ContentExternalBackdropLink
ContentExternalOutputLink
ContentIsland
AutomationTreeOption
Children
Connected
ConnectionInfo
ConnectRemoteEndpoint
CreateForSystemVisual
Disconnected
FindAllForSystemCompositor
FragmentRootAutomationProvider
GetBySystemVisual
InputCapabilities
IsRemoteEndpointConnected
LocalToClientTransformMatrix
LocalToParentTransformMatrix
NextSiblingAutomationProvider
ParentAutomationProvider
Popups
PreviousSiblingAutomationProvider
Root
ContentIslandEnvironment
CurrentOrientation
DisplayScale
NativeOrientation
ThemeChanged
ContentIslandStateChangedEventArgs
DidLocalToClientTransformMatrixChange
DidLocalToParentTransformMatrixChange
ContentSite
InputCapabilities
LocalToClientTransformMatrix
LocalToParentTransformMatrix
SetContentNodeParent
TryGetAutomationProvider
ContentSiteAutomationProviderRequestedEventArgs
ContentSiteEnvironment
CurrentOrientation
DisplayScale
NativeOrientation
NotifyThemeChanged
ContentSiteEnvironmentView
DisplayScale
ContentSiteView
AutomationTreeOption
InputCapabilities
LocalToClientTransformMatrix
LocalToParentTransformMatrix
CoreWindowSiteBridge
CoreWindowTopLevelWindowBridge
DesktopChildSiteBridge
AcceptRemoteEndpoint
ConnectionInfo
CreateWithDispatcherQueue
IsRemoteEndpointConnected
RemoteEndpointConnecting
RemoteEndpointDisconnected
RemoteEndpointRequestedStateChanged
DesktopPopupSiteBridge
DesktopSiteBridge
TryCreatePopupSiteBridge
EndpointConnectionEventArgs
EndpointRequestedStateChangedEventArgs
IContentIslandEndpointConnectionPrivate
IContentNodeOwner
IContentSiteAutomation
IContentSiteBridgeEndpointConnectionPrivate
IContentSiteInput
IContentSiteLink
IContentSiteLink2
InputCapabilities
PopupWindowSiteBridge
ProcessStarter
ReadOnlyDesktopSiteBridge
SystemVisualSiteBridgeMicrosoft.UI.Input
InputFocusNavigationHost
GetForSiteLink
InputKeyboardSource
GetForWindowId
InputLayoutPolicy
InputLightDismissAction
GetForIsland
InputPointerActivationBehavior
InputPointerSource
ActivationBehavior
DirectManipulationHitTest
GetForVisual
GetForWindowId
RemoveForVisual
TouchHitTesting
TrySetDeviceKinds
ProximityEvaluation
TouchHitTestingEventArgsMicrosoft.UI.Input.Experimental
ExpInputSite
ExpPointerPointMicrosoft.UI.Text
RichEditTextDocument
GetMath
SetMath
SetMathModeMicrosoft.UI.Windowing
AppWindow
DefaultTitleBarShouldMatchAppModeTheme
DisplayArea
GetMetricsFromWindowIdMicrosoft.UI.Xaml
XamlIsland
XamlRoot
TryGetContentIslandMicrosoft.UI.Xaml.Automation.Peers
AutomationEvents
Notification
InkCanvasAutomationPeer
PagerControlAutomationPeerMicrosoft.UI.Xaml.Controls
ContentDialogPlacement
UnconstrainedPopup
DoInkPresenterWork
ElementFactory
FlowLayout
FlowLayoutAnchorInfo
FlowLayoutLineAlignment
FlowLayoutState
IApplicationViewSpanningRects
IndexPath
InkCanvas
ISelfPlayingAnimatedVisual
ItemContainer
CanUserInvoke
CanUserInvokeProperty
CanUserSelect
CanUserSelectProperty
ItemInvoked
MultiSelectMode
MultiSelectModeProperty
ItemContainerInteractionTrigger
ItemContainerInvokedEventArgs
ItemContainerMultiSelectMode
ItemContainerUserInvokeMode
ItemContainerUserSelectMode
LayoutPanel
NumberBox
InputScope
InputScopeProperty
TextAlignment
TextAlignmentProperty
PagerControl
PagerControlButtonVisibility
PagerControlDisplayMode
PagerControlSelectedIndexChangedEventArgs
PagerControlTemplateSettings
ProgressRing
DeterminateSource
DeterminateSourceProperty
IndeterminateSource
IndeterminateSourceProperty
RecyclePool
RecyclingElementFactory
ScrollingScrollStartingEventArgs
ScrollingZoomStartingEventArgs
ScrollView
ScrollStarting
ZoomStarting
SelectionModel
SelectionModelChildrenRequestedEventArgs
SelectionModelSelectionChangedEventArgs
SelectTemplateEventArgs
StackLayout
IsVirtualizationEnabled
IsVirtualizationEnabledProperty
StackLayoutState
TitleBar
TitleBarAutomationPeer
TitleBarTemplateSettings
UniformGridLayoutStateMicrosoft.UI.Xaml.Controls.Primitives
ScrollPresenter
ScrollStarting
ZoomStartingMicrosoft.Windows.ApplicationModel.Background
BackgroundTaskBuilder
BackgroundTaskContractMicrosoft.Windows.ApplicationModel.Background.UniversalBGTask
TaskMicrosoft.Windows.ApplicationModel.WindowsAppRuntime
CompatibilityChange
CompatibilityContract
CompatibilityOptions
DeploymentManager
Repair
DeploymentStatus
PackageRepairFailed
ReleaseInfo
RuntimeInfo
VersionInfoContract
WindowsAppRuntimeVersionMicrosoft.Windows.AppNotifications
AppNotification
ConferencingConfig
AppNotificationConferencingConfigMicrosoft.Windows.AppNotifications.Builder
AppNotificationBuilder
AddCameraPreview
AppNotificationButton
SetSettingStyle
AppNotificationButtonSettingStyleMicrosoft.Windows.BadgeNotifications
BadgeNotificationGlyph
BadgeNotificationManager
BadgeNotificationsContractMicrosoft.Windows.Media.Capture
CameraCaptureUI
CameraCaptureUIContract
CameraCaptureUIMaxPhotoResolution
CameraCaptureUIMaxVideoResolution
CameraCaptureUIMode
CameraCaptureUIPhotoCaptureSettings
CameraCaptureUIPhotoFormat
CameraCaptureUIVideoCaptureSettings
CameraCaptureUIVideoFormatMicrosoft.Windows.Storage
ApplicationData
GetForUnpackagedThis is the latest release of the experimental channel.
To download, retarget your WinAppSDK NuGet version to 1.7.241114004-experimental1.
A new CameraCaptureUI API makes it easier to capture photos and videos in your WinAppSDK app. For more info, see GitHub issue #4721.
A new OAuth2Manager API provides a streamlined solution for web authentication, offering OAuth 2.0 capabilities with full feature parity across all Windows platforms supported by WinAppSDK. For more info, see GitHub issue #4772.
A new BackgroundTaskBuilder API brings integrated support for background task registration to your WinAppSDK apps. For more info, see GitHub issue #4822.
This release includes the following new and modified experimental APIs:
Microsoft.Security.Authentication.OAuth
AuthFailure
AuthRequestParams
AuthRequestResult
AuthResponse
ClientAuthentication
CodeChallengeMethodKind
OAuth2Manager
OAuthContract
TokenFailure
TokenFailureKind
TokenRequestParams
TokenRequestResult
TokenResponseMicrosoft.UI.Composition
CompositionNotificationDeferral
CompositionProjectedShadow
MaxOpacity
MinOpacity
OpacityFalloff
CompositionProjectedShadowCaster
AncestorClip
Mask
CompositionProjectedShadowDrawOrder
CompositionProjectedShadowReceiver
DrawOrder
MaskMicrosoft.UI.Composition.Experimental
ExpCompositionVisualSurface
ExpExpressionNotificationProperty
IExpCompositionPropertyChanged
IExpCompositionPropertyChangedListener
IExpCompositor
IExpVisualMicrosoft.UI.Content
AutomationOptions
ChildContentLink
ContentAppWindowBridge
ContentDisplayOrientations
ContentEnvironmentStateChangedEventArgs
DidDisplayScaleChange
ContentExternalBackdropLink
ContentExternalOutputLink
ContentIsland
Children
Compositor
Connected
ConnectionInfo
ConnectRemoteEndpoint
Create
Disconnected
FindAllForCompositor
FragmentRootAutomationProvider
GetByVisual
IsRemoteEndpointConnected
NextSiblingAutomationProvider
ParentAutomationProvider
PreviousSiblingAutomationProvider
Root
TransformMatrix
ContentIslandEnvironment
AutomationOption
CurrentOrientation
DisplayScale
NativeOrientation
ThemeChanged
ContentSite
Compositor
SetContentNodeParent
SetIsInputPassThrough
SiteVisual
TransformMatrix
TryGetAutomationProvider
ContentSiteAutomationProviderRequestedEventArgs
ContentSiteEnvironment
CurrentOrientation
DisplayScale
NativeOrientation
NotifyThemeChanged
ContentSiteView
TransformMatrix
CoreWindowSiteBridge
CoreWindowTopLevelWindowBridge
DesktopChildSiteBridge
AcceptRemoteEndpoint
ConnectionInfo
IsRemoteEndpointConnected
RemoteEndpointConnecting
RemoteEndpointDisconnected
RemoteEndpointRequestedStateChanged
DesktopSiteBridge
TryCreatePopupSiteBridge
EndpointConnectionEventArgs
EndpointRequestedStateChangedEventArgs
IContentIslandEndpointConnectionPrivate
IContentLink
IContentNodeOwner
IContentSiteBridge2
IContentSiteBridgeAutomation
IContentSiteBridgeEndpointConnectionPrivate
PopupWindowSiteBridge
ProcessStarter
ReadOnlyDesktopSiteBridge
SystemVisualSiteBridgeMicrosoft.UI.Input
InputKeyboardSource
GetForWindowId
InputLayoutPolicy
InputLightDismissAction
GetForIsland
InputPointerActivationBehavior
InputPointerSource
ActivationBehavior
DirectManipulationHitTest
GetForVisual
GetForWindowId
RemoveForVisual
TouchHitTesting
TrySetDeviceKinds
ProximityEvaluation
TouchHitTestingEventArgsMicrosoft.UI.Input.Experimental
ExpInputSite
ExpPointerPointMicrosoft.UI.Windowing
AppWindow
DefaultTitleBarShouldMatchAppModeTheme
DisplayArea
GetMetricsFromWindowIdMicrosoft.UI.Xaml
XamlIsland
XamlRoot
TryGetContentIslandMicrosoft.UI.Xaml.Automation.Peers
AutomationEvents
Notification
InkCanvasAutomationPeer
PagerControlAutomationPeerMicrosoft.UI.Xaml.Controls
ContentDialogPlacement
UnconstrainedPopup
DoInkPresenterWork
ElementFactory
FlowLayout
FlowLayoutAnchorInfo
FlowLayoutLineAlignment
FlowLayoutState
IApplicationViewSpanningRects
IndexPath
InkCanvas
ISelfPlayingAnimatedVisual
ItemContainer
CanUserInvoke
CanUserInvokeProperty
CanUserSelect
CanUserSelectProperty
ItemInvoked
MultiSelectMode
MultiSelectModeProperty
ItemContainerInteractionTrigger
ItemContainerInvokedEventArgs
ItemContainerMultiSelectMode
ItemContainerUserInvokeMode
ItemContainerUserSelectMode
LayoutPanel
NumberBox
InputScope
InputScopeProperty
TextAlignment
TextAlignmentProperty
PagerControl
PagerControlButtonVisibility
PagerControlDisplayMode
PagerControlSelectedIndexChangedEventArgs
PagerControlTemplateSettings
ProgressRing
DeterminateSource
DeterminateSourceProperty
IndeterminateSource
IndeterminateSourceProperty
RecyclePool
RecyclingElementFactory
ScrollingScrollStartingEventArgs
ScrollingZoomStartingEventArgs
ScrollView
ScrollStarting
ZoomStarting
SelectionModel
SelectionModelChildrenRequestedEventArgs
SelectionModelSelectionChangedEventArgs
SelectTemplateEventArgs
StackLayout
IsVirtualizationEnabled
IsVirtualizationEnabledProperty
StackLayoutState
TitleBar
TitleBarAutomationPeer
TitleBarTemplateSettings
UniformGridLayoutStateMicrosoft.UI.Xaml.Controls.Primitives
ScrollPresenter
ScrollStarting
ZoomStartingMicrosoft.Windows.ApplicationModel.Background
BackgroundTaskBuilder
BackgroundTaskContractMicrosoft.Windows.ApplicationModel.Background.UniversalBGTask
TaskMicrosoft.Windows.ApplicationModel.WindowsAppRuntime
DeploymentManager
Repair
DeploymentStatus
PackageRepairFailed
ReleaseInfo
RuntimeInfo
VersionInfoContractMicrosoft.Windows.Media.Capture
CameraCaptureUI
CameraCaptureUIContract
CameraCaptureUIMaxPhotoResolution
CameraCaptureUIMaxVideoResolution
CameraCaptureUIMode
CameraCaptureUIPhotoCaptureSettings
CameraCaptureUIPhotoFormat
CameraCaptureUIVideoCaptureSettings
CameraCaptureUIVideoFormatMicrosoft.Windows.Storage
ApplicationData
GetForUnpackagedThis release includes the following bug fixes:
- Changed
SplitButtonso touch input now matches the behavior of mouse input. For more info, see GitHub issue #178. - Changed cascading menus so sub menus now open immediately if clicked. For more info, see GitHub issue #939.
- Fixed an issue where opening a
ComboBoxwhich is in a flyout closes all flyouts. For more info, see GitHub issue #1467. - Fixed an issue where
SwipeControlwould randomly crash in aListView. For more info, see GitHub issue #2527. - Fixed an issue where drag-and-drop only a
ListViewItemwould leave it in the wrong visual state. For more info, see GitHub issue #3458. - Fixed an issue in
StackLayoutso that it respects the ItemsRepeater.HorizontalAlignment and ItemsRepeater.VerticalAlignment properties (when StackLayout.Orientation is Vertical and Horizontal respectively). The old layout behaved as if the ItemsRepeater alignment was Stretch. With the fix, the layout results in items aligned to the right when the Right alignment is used, for example. For more info, see GitHub issue #3842. - Fixed an issue where deleting items in the
ItemsRepeater's source would not generate items which moved up into view. For more info, see GitHub issue #6661. - Fixed an issue where the right Alt key would not show keytips for Access Keys. For more info, see GitHub issue #8447. Note: This may result in key events for the right Alt key no longer being delivered to handles in the app or controls.
- Fixed a crash where
UniformGridLayoutwould sometimes pick a wrong layout anchor and cause infinite layout passes when scrolling backwards. For more info, see GitHub issue #9199. - Fixed an issue where setting
NavigationFailedEventArgs.Handledto True would still throw an exception. For more info, see GitHub issue #9632. - Fixed an issue where
TabViewwould not apply any specifiedCornerRadius. For more info, see GitHub issue #9846. - Fixed a potential layout cycle crash in
StackLayout. For more info, see GitHub issue #9852. - Fixed a potential crash in
ItemsViewwhen removing items. For more info, see GitHub issue #9868.