Skip to content

Commit cd3c94e

Browse files
Merge pull request #6457 from MicrosoftDocs/main
Auto Publish – main to live - 2026-03-14 05:00 UTC
2 parents 812daf6 + 5830870 commit cd3c94e

35 files changed

Lines changed: 116 additions & 1007 deletions

.openpublishing.redirection.json

Lines changed: 31 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,41 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "hub/apps/design/shell/tiles-and-notifications/notification-mirroring.md",
5+
"redirect_url": "/previous-versions/windows/uwp/notifications/notification-mirroring",
6+
"redirect_document_id": false
7+
},
8+
{
9+
"source_path": "hub/apps/design/shell/tiles-and-notifications/universal-dismiss.md",
10+
"redirect_url": "/previous-versions/windows/uwp/notifications/universal-dismiss",
11+
"redirect_document_id": false
12+
},
13+
{
14+
"source_path": "uwp/contacts-and-calendar/my-people-support.md",
15+
"redirect_url": "/previous-versions/windows/uwp/contacts-and-calendar/my-people-support",
16+
"redirect_document_id": false
17+
},
18+
{
19+
"source_path": "uwp/contacts-and-calendar/my-people-sharing.md",
20+
"redirect_url": "/previous-versions/windows/uwp/contacts-and-calendar/my-people-sharing",
21+
"redirect_document_id": false
22+
},
23+
{
24+
"source_path": "uwp/contacts-and-calendar/my-people-notifications.md",
25+
"redirect_url": "/previous-versions/windows/uwp/contacts-and-calendar/my-people-notifications",
26+
"redirect_document_id": false
27+
},
28+
{
29+
"source_path": "uwp/contacts-and-calendar/integrating-with-contacts.md",
30+
"redirect_url": "/previous-versions/windows/uwp/contacts-and-calendar/integrating-with-contacts",
31+
"redirect_document_id": false
32+
},
333
{
434
"source_path": "hub/apps/develop/ui/controls/contact-card.md",
535
"redirect_url": "/previous-versions/windows/uwp/contacts-and-calendar/contact-card",
636
"redirect_document_id": false
737
},
8-
{
38+
{
939
"source_path": "hub/apps/design/devices/designing-for-tv.md",
1040
"redirect_url": "/previous-versions/windows/uwp/xbox-apps/designing-for-tv",
1141
"redirect_document_id": false
Binary file not shown.
Binary file not shown.
Binary file not shown.

hub/apps/design/shell/tiles-and-notifications/notification-mirroring.md

Lines changed: 0 additions & 85 deletions
This file was deleted.

hub/apps/design/shell/tiles-and-notifications/universal-dismiss.md

Lines changed: 0 additions & 62 deletions
This file was deleted.

hub/apps/develop/platform/xaml/attached-properties-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@ The dot in an attached property name is a key part of the identification pattern
117117
- To specify an attached property as part of a target path for an animation, enclose the attached property name in parentheses `()`—for example, `(Canvas.Left)`. For more info, see [Property-path syntax](property-path-syntax.md).
118118
119119
> [!WARNING]
120-
> An existing limitation of the Windows Runtime XAML implementation is that you cannot animate a custom attached property.
120+
> An existing limitation of the WinUI implementation is that you cannot animate a custom attached property.
121121
122122
- To specify an attached property as the target property for a resource reference from a resource file to **x:Uid**, use a special syntax that injects a code-style, fully qualified **using:** declaration inside square brackets ("\[\]"), to create a deliberate scope break. For example, assuming there exists an element `<TextBlock x:Uid="Title" />`, the resource key in the resource file that targets the **Canvas.Top** value on that instance is `Title.\[using:Microsoft.UI.Xaml.Controls\]Canvas.Top`. For more info on resource files and XAML, see [Localize strings in your UI](../../../windows-app-sdk/mrtcore/localize-strings.md).
123123

hub/apps/develop/platform/xaml/custom-attached-properties.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -20,14 +20,14 @@ An _attached property_ is a XAML concept. Attached properties are typically defi
2020

2121
## Prerequisites
2222

23-
We assume that you understand dependency properties from the perspective of a consumer of existing dependency properties, and that you have read the [Dependency properties overview](dependency-properties-overview.md). You should also have read [Attached properties overview](attached-properties-overview.md). To follow the examples in this topic, you should also understand XAML and know how to write a basic Windows Runtime app using C++, C#, or Visual Basic.
23+
We assume that you understand dependency properties from the perspective of a consumer of existing dependency properties, and that you have read the [Dependency properties overview](dependency-properties-overview.md). You should also have read [Attached properties overview](attached-properties-overview.md). To follow the examples in this topic, you should also understand XAML and know how to write a basic WinUI app using C++ or C#.
2424

2525
## Scenarios for attached properties
2626

2727
You might create an attached property when there is a reason to have a property-setting mechanism available for classes other than the defining class. The most common scenarios for this are layout and services support. Examples of existing layout properties are [**Canvas.ZIndex**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.controls.canvas.zindex) and [**Canvas.Top**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.controls.canvas.top). In a layout scenario, elements that exist as child elements to layout-controlling elements can express layout requirements to their parent elements individually, each setting a property value that the parent defines as an attached property. An example of the services-support scenario in the Windows Runtime API is set of the attached properties of [**ScrollViewer**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.Controls.ScrollViewer), such as [**ScrollViewer.IsZoomChainingEnabled**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.controls.scrollviewer.iszoomchainingenabled).
2828

2929
> [!WARNING]
30-
> An existing limitation of the Windows Runtime XAML implementation is that you cannot animate your custom attached property.
30+
> An existing limitation of the WinUI app implementation is that you cannot animate your custom attached property.
3131
3232
## Registering a custom attached property
3333

hub/apps/develop/platform/xaml/custom-dependency-properties.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
---
2-
description: Explains how to define and implement custom dependency properties for a Windows Runtime app using C++, C#, or Visual Basic.
2+
description: Explains how to define and implement custom dependency properties for a WinUI app using C++, C#, or Visual Basic.
33
title: Custom dependency properties
44
ms.assetid: 5ADF7935-F2CF-4BB6-B1A5-F535C2ED8EF8
55
ms.date: 09/08/2025
66
ms.topic: article
7-
keywords: windows 10, uwp
7+
keywords: windows 10, winui
88
ms.localizationpriority: medium
99
dev_langs:
1010
- csharp
@@ -14,11 +14,11 @@ dev_langs:
1414
---
1515
# Custom dependency properties
1616

17-
Here we explain how to define and implement your own dependency properties for a Windows Runtime app using C++, C#, or Visual Basic. We list reasons why app developers and component authors might want to create custom dependency properties. We describe the implementation steps for a custom dependency property, as well as some best practices that can improve performance, usability, or versatility of the dependency property.
17+
Here we explain how to define and implement your own dependency properties for a WinUI app using C++, C#, or Visual Basic. We list reasons why app developers and component authors might want to create custom dependency properties. We describe the implementation steps for a custom dependency property, as well as some best practices that can improve performance, usability, or versatility of the dependency property.
1818

1919
## Prerequisites
2020

21-
We assume that you have read the [Dependency properties overview](dependency-properties-overview.md) and that you understand dependency properties from the perspective of a consumer of existing dependency properties. To follow the examples in this topic, you should also understand XAML and know how to write a basic Windows Runtime app using C++, C#, or Visual Basic.
21+
We assume that you have read the [Dependency properties overview](dependency-properties-overview.md) and that you understand dependency properties from the perspective of a consumer of existing dependency properties. To follow the examples in this topic, you should also understand XAML and know how to write a basic WinUI app using C++ or C#.
2222

2323
## What is a dependency property?
2424

@@ -38,7 +38,7 @@ If you implement a custom dependency property yourself and want it to be public
3838

3939
Whenever you implement a public read/write property on a class, as long as your class derives from [**DependencyObject**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.DependencyObject), you have the option to make your property work as a dependency property. Sometimes the typical technique of backing your property with a private field is adequate. Defining your custom property as a dependency property is not always necessary or appropriate. The choice will depend on the scenarios that you intend your property to support.
4040

41-
You might consider implementing your property as a dependency property when you want it to support one or more of these features of the Windows Runtime or of Windows Runtime apps:
41+
You might consider implementing your property as a dependency property when you want it to support one or more of these features of the Windows Runtime or of WinUI apps:
4242

4343
- Setting the property through a [**Style**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.Style)
4444
- Acting as valid target property for data binding with [**{Binding}**](binding-markup-extension.md)
@@ -431,7 +431,7 @@ Keep the following considerations in mind as best practices when as you define y
431431

432432
### DependencyObject and threading
433433

434-
All [**DependencyObject**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.DependencyObject) instances must be created on the UI thread which is associated with the current [**Window**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.Window) that is shown by a Windows Runtime app. Although each **DependencyObject** must be created on the main UI thread, the objects can be accessed using a dispatcher reference from other threads, by calling [**Dispatcher**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.dependencyobject.dispatcher).
434+
All [**DependencyObject**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.DependencyObject) instances must be created on the UI thread which is associated with the current [**Window**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.Window) that is shown by a WinUI app. Although each **DependencyObject** must be created on the main UI thread, the objects can be accessed using a dispatcher reference from other threads, by calling [**Dispatcher**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.dependencyobject.dispatcher).
435435

436436
The threading aspects of [**DependencyObject**](/windows/windows-app-sdk/api/winrt/microsoft.ui.xaml.DependencyObject) are relevant because it generally means that only code that runs on the UI thread can change or even read the value of a dependency property. Threading issues can usually be avoided in typical UI code that makes correct use of **async** patterns and background worker threads. You typically only run into **DependencyObject**-related threading issues if you are defining your own **DependencyObject** types and you attempt to use them for data sources or other scenarios where a **DependencyObject** isn't necessarily appropriate.
437437

0 commit comments

Comments
 (0)