Files
docs-desktop/dotnet-desktop-guide/framework/wpf/advanced/how-to-register-an-attached-property.md
T
Andy De George da363692ff Initial WPF content migrated (#17)
* Reset branch for WPF changes

* Convert BMP to PNG; fix link-out-of-scope err

* Add snippets for WPF... 6794 files!!!!

* Add missing snippets

* update file updated between migration

* Fix paths to include

* update breadcrumb and toc

* fix index links

* fix index links

* fix index links

* fix markdown
2020-09-04 09:46:28 -07:00

2.4 KiB

title, ms.date, dev_langs, helpviewer_keywords, ms.assetid
title ms.date dev_langs helpviewer_keywords ms.assetid
How to: Register an Attached Property 03/30/2017
csharp
vb
attached properties [WPF], registering
registering attached properties [WPF]
eb47bd94-0451-4f8d-8fb6-95f7812ac05b

How to: Register an Attached Property

This example shows how to register an attached property and provide public accessors so that you can use the property in both [!INCLUDETLA#tla_xaml] and code. Attached properties are a syntax concept defined by [!INCLUDETLA#tla_xaml]. Most attached properties for [!INCLUDETLA2#tla_winclient] types are also implemented as dependency properties. You can use dependency properties on any xref:System.Windows.DependencyObject types.

Example

The following example shows how to register an attached property as a dependency property, by using the xref:System.Windows.DependencyProperty.RegisterAttached%2A method. The provider class has the option of providing default metadata for the property that is applicable when the property is used on another class, unless that class overrides the metadata. In this example, the default value of the IsBubbleSource property is set to false.

The provider class for an attached property (even if it is not registered as a dependency property) must provide static get and set accessors that follow the naming convention Set[AttachedPropertyName] and Get[AttachedPropertyName]. These accessors are required so that the acting [!INCLUDETLA2#tla_xaml] reader can recognize the property as an attribute in [!INCLUDETLA2#tla_xaml] and resolve the appropriate types.

[!code-csharpWPFAquariumSln#RegisterAttachedBubbler] [!code-vbWPFAquariumSln#RegisterAttachedBubbler]

See also