DependencyProperty.RegisterAttached Metode

Definisi

Mendaftarkan properti terlampir dengan sistem properti.

Overload

Nama Deskripsi
RegisterAttached(String, Type, Type)

Mendaftarkan properti terlampir dengan nama properti, jenis properti, dan jenis pemilik yang ditentukan.

RegisterAttached(String, Type, Type, PropertyMetadata)

Mendaftarkan properti terlampir dengan nama properti, jenis properti, jenis pemilik, dan metadata properti yang ditentukan.

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Mendaftarkan properti terlampir dengan jenis properti, jenis pemilik, metadata properti, dan panggilan balik validasi nilai yang ditentukan untuk properti .

RegisterAttached(String, Type, Type)

Mendaftarkan properti terlampir dengan nama properti, jenis properti, dan jenis pemilik yang ditentukan.

public:
 static System::Windows::DependencyProperty ^ RegisterAttached(System::String ^ name, Type ^ propertyType, Type ^ ownerType);
public static System.Windows.DependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType);
static member RegisterAttached : string * Type * Type -> System.Windows.DependencyProperty
Public Shared Function RegisterAttached (name As String, propertyType As Type, ownerType As Type) As DependencyProperty

Parameter

name
String

Nama properti dependensi yang akan didaftarkan.

propertyType
Type

Jenis properti.

ownerType
Type

Jenis pemilik yang mendaftarkan properti dependensi.

Mengembalikan

Pengidentifikasi properti dependensi yang harus digunakan untuk mengatur nilai public static readonly bidang di kelas Anda. Pengidentifikasi tersebut kemudian digunakan untuk mereferensikan properti dependensi nanti, untuk operasi seperti mengatur nilainya secara terprogram atau mendapatkan metadata.

Contoh

Contoh berikut mendaftarkan properti terlampir pada kelas abstrak menggunakan tanda tangan ini RegisterAttached .

public static readonly DependencyProperty IsBubbleSourceProperty = DependencyProperty.RegisterAttached(
  "IsBubbleSource",
  typeof(Boolean),
  typeof(AquariumObject2)
);
public static void SetIsBubbleSource(UIElement element, Boolean value)
{
    element.SetValue(IsBubbleSourceProperty, value);
}
public static Boolean GetIsBubbleSource(UIElement element)
{
    return (Boolean)element.GetValue(IsBubbleSourceProperty);
}
Public Shared ReadOnly IsBubbleSourceProperty As DependencyProperty = DependencyProperty.RegisterAttached("IsBubbleSource", GetType(Boolean), GetType(AquariumObject2))
Public Shared Sub SetIsBubbleSource(ByVal element As UIElement, ByVal value As Boolean)
    element.SetValue(IsBubbleSourceProperty, value)
End Sub
Public Shared Function GetIsBubbleSource(ByVal element As UIElement) As Boolean
    Return CType(element.GetValue(IsBubbleSourceProperty), Boolean)
End Function

Keterangan

Properti terlampir adalah konsep properti yang ditentukan oleh Extensible Application Markup Language (XAML). WPF mengimplementasikan properti terlampir sebagai properti dependensi. Karena properti terlampir WPF adalah properti dependensi, properti tersebut dapat menerapkan metadata yang dapat digunakan oleh sistem properti umum untuk operasi seperti melaporkan karakteristik tata letak. Untuk informasi selengkapnya, lihat Gambaran Umum Properti Terlampir.

Untuk informasi selengkapnya tentang pendaftaran properti dependensi, lihat DependencyProperty.

Lihat juga

Berlaku untuk

RegisterAttached(String, Type, Type, PropertyMetadata)

Mendaftarkan properti terlampir dengan nama properti, jenis properti, jenis pemilik, dan metadata properti yang ditentukan.

public:
 static System::Windows::DependencyProperty ^ RegisterAttached(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ defaultMetadata);
public static System.Windows.DependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata defaultMetadata);
static member RegisterAttached : string * Type * Type * System.Windows.PropertyMetadata -> System.Windows.DependencyProperty
Public Shared Function RegisterAttached (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata) As DependencyProperty

Parameter

name
String

Nama properti dependensi yang akan didaftarkan.

propertyType
Type

Jenis properti.

ownerType
Type

Jenis pemilik yang mendaftarkan properti dependensi.

defaultMetadata
PropertyMetadata

Metadata properti untuk properti dependensi. Ini dapat mencakup nilai default serta karakteristik lainnya.

Mengembalikan

Pengidentifikasi properti dependensi yang harus digunakan untuk mengatur nilai public static readonly bidang di kelas Anda. Pengidentifikasi tersebut kemudian digunakan untuk mereferensikan properti dependensi nanti, untuk operasi seperti mengatur nilainya secara terprogram atau mendapatkan metadata.

Keterangan

Properti terlampir adalah konsep properti yang ditentukan oleh Extensible Application Markup Language (XAML). WPF mengimplementasikan properti terlampir sebagai properti dependensi. Karena properti terlampir WPF adalah properti dependensi, properti tersebut dapat menerapkan metadata yang dapat digunakan oleh sistem properti umum untuk operasi seperti melaporkan karakteristik tata letak. Untuk informasi selengkapnya, lihat Gambaran Umum Properti Terlampir.

Untuk informasi selengkapnya tentang pendaftaran properti dependensi, lihat DependencyProperty.

Gunakan RegisterAttached untuk Properti Dependensi yang Mewarisi Nilai

Salah satu skenario tertentu untuk mendaftarkan properti dependensi dengan RegisterAttached alih-alih Register adalah mendukung pewarisan nilai properti. Anda harus mendaftarkan properti RegisterAttached dependensi yang mewarisi nilai meskipun kelas mendefinisikan aksesor pembungkus properti yang mengekspos properti dependensi, dan bahkan jika Anda tidak ingin mengekspos metode statis Get* dan Set* untuk menyediakan pengakses dukungan properti terlampir sejati. Meskipun pewarisan nilai properti mungkin tampak berfungsi untuk properti dependensi yang tidak terpasang, perilaku warisan untuk properti yang tidak terpasang melalui batas elemen tertentu di pohon runtime tidak terdefinisi. Mendaftarkan properti sebagai terlampir secara efektif menjadikan properti terlampir sebagai properti global ke sistem properti, dan memastikan bahwa warisan nilai properti berfungsi di semua batas di pohon elemen. Selalu gunakan RegisterAttached untuk mendaftarkan properti di mana Anda menentukan Inherits dalam metadata. Untuk informasi selengkapnya, lihat Pewarisan Nilai Properti.

Lihat juga

Berlaku untuk

RegisterAttached(String, Type, Type, PropertyMetadata, ValidateValueCallback)

Mendaftarkan properti terlampir dengan jenis properti, jenis pemilik, metadata properti, dan panggilan balik validasi nilai yang ditentukan untuk properti .

public:
 static System::Windows::DependencyProperty ^ RegisterAttached(System::String ^ name, Type ^ propertyType, Type ^ ownerType, System::Windows::PropertyMetadata ^ defaultMetadata, System::Windows::ValidateValueCallback ^ validateValueCallback);
public static System.Windows.DependencyProperty RegisterAttached(string name, Type propertyType, Type ownerType, System.Windows.PropertyMetadata defaultMetadata, System.Windows.ValidateValueCallback validateValueCallback);
static member RegisterAttached : string * Type * Type * System.Windows.PropertyMetadata * System.Windows.ValidateValueCallback -> System.Windows.DependencyProperty
Public Shared Function RegisterAttached (name As String, propertyType As Type, ownerType As Type, defaultMetadata As PropertyMetadata, validateValueCallback As ValidateValueCallback) As DependencyProperty

Parameter

name
String

Nama properti dependensi yang akan didaftarkan.

propertyType
Type

Jenis properti.

ownerType
Type

Jenis pemilik yang mendaftarkan properti dependensi.

defaultMetadata
PropertyMetadata

Metadata properti untuk properti dependensi. Ini dapat mencakup nilai default serta karakteristik lainnya.

validateValueCallback
ValidateValueCallback

Referensi ke panggilan balik yang harus melakukan validasi kustom dari nilai properti dependensi di luar validasi jenis umum.

Mengembalikan

Pengidentifikasi properti dependensi yang harus digunakan untuk mengatur nilai public static readonly bidang di kelas Anda. Pengidentifikasi tersebut kemudian digunakan untuk mereferensikan properti dependensi nanti, untuk operasi seperti mengatur nilainya secara terprogram atau mendapatkan metadata.

Contoh

Contoh berikut mendaftarkan properti terlampir pada kelas abstrak menggunakan tanda tangan ini RegisterAttached . Properti terlampir ini adalah properti jenis enumerasi, dan pendaftaran menambahkan panggilan balik validasi untuk memverifikasi bahwa nilai yang disediakan adalah nilai enumerasi.

public static readonly DependencyProperty IsBubbleSourceProperty = DependencyProperty.RegisterAttached(
  "IsBubbleSource",
  typeof(Boolean),
  typeof(AquariumObject2)
);
public static void SetIsBubbleSource(UIElement element, Boolean value)
{
    element.SetValue(IsBubbleSourceProperty, value);
}
public static Boolean GetIsBubbleSource(UIElement element)
{
    return (Boolean)element.GetValue(IsBubbleSourceProperty);
}
Public Shared ReadOnly IsBubbleSourceProperty As DependencyProperty = DependencyProperty.RegisterAttached("IsBubbleSource", GetType(Boolean), GetType(AquariumObject2))
Public Shared Sub SetIsBubbleSource(ByVal element As UIElement, ByVal value As Boolean)
    element.SetValue(IsBubbleSourceProperty, value)
End Sub
Public Shared Function GetIsBubbleSource(ByVal element As UIElement) As Boolean
    Return CType(element.GetValue(IsBubbleSourceProperty), Boolean)
End Function

Keterangan

Properti terlampir adalah konsep properti yang ditentukan oleh Extensible Application Markup Language (XAML). WPF mengimplementasikan properti terlampir sebagai properti dependensi. Karena properti terlampir WPF adalah properti dependensi, properti tersebut dapat menerapkan metadata yang dapat digunakan oleh sistem properti umum untuk operasi seperti melaporkan karakteristik tata letak. Untuk informasi selengkapnya, lihat Gambaran Umum Properti Terlampir.

Untuk informasi selengkapnya tentang pendaftaran properti dependensi, lihat DependencyProperty.

Gunakan RegisterAttached untuk Properti Dependensi yang Mewarisi Nilai

Salah satu skenario tertentu untuk mendaftarkan properti dependensi dengan RegisterAttached alih-alih Register adalah mendukung pewarisan nilai properti. Anda harus mendaftarkan properti RegisterAttached dependensi yang mewarisi nilai meskipun kelas mendefinisikan aksesor pembungkus properti yang mengekspos properti dependensi, dan bahkan jika Anda tidak ingin mengekspos metode statis Get* dan Set* untuk menyediakan pengakses dukungan properti terlampir sejati. Meskipun pewarisan nilai properti mungkin tampak berfungsi untuk properti dependensi yang tidak terpasang, perilaku warisan untuk properti yang tidak terpasang melalui batas elemen tertentu di pohon runtime tidak terdefinisi. Mendaftarkan properti sebagai terlampir secara efektif menjadikan properti terlampir sebagai properti global ke sistem properti, dan memastikan bahwa warisan nilai properti berfungsi di semua batas di pohon elemen. Selalu gunakan RegisterAttached untuk mendaftarkan properti di mana Anda menentukan Inherits dalam metadata. Untuk informasi selengkapnya, lihat Pewarisan Nilai Properti.

Lihat juga

Berlaku untuk