Share via


MarkupExtension Kelas

Definisi

Menyediakan kelas dasar untuk implementasi ekstensi markup XAML yang dapat didukung oleh Layanan XAML .NET dan pembaca XAML lainnya dan penulis XAML.

public ref class MarkupExtension abstract
public abstract class MarkupExtension
type MarkupExtension = class
Public MustInherit Class MarkupExtension
Warisan
MarkupExtension
Turunan

Keterangan

Ekstensi markup mengembalikan objek ke pemanggil, berdasarkan input nilai atribut string atau elemen markup di XAML. Ekstensi markup mengembalikan objek dengan cara yang lebih canggih daripada pengonversi jenis saja yang dapat dicapai. Penulis objek XAML memanggil pengonversi jenis karena jenis atau anggota memiliki implementasi pengonversi jenis yang terkait dengannya. Dari bingkai referensi CLR, ini berarti bahwa jenis atau anggota dikaitkan TypeConverterAttribute . Dari perspektif sistem jenis XAML, ini berarti bahwa jenis XAML atau anggota XAML memiliki nilai untuk propertinya TypeConverter . Pemanggilan pengonversi jenis terkait dengan jenis atau definisi properti, dan selalu dipanggil oleh pemrosesan XAML untuk kasus ini. Sebaliknya, ekstensi markup lebih berada di bawah kendali kode pengguna dan markup yang diproduksi pengguna, dan dapat diterapkan setiap kali skenario aplikasi menuntutnya. Ekstensi markup dapat dipanggil dan dapat digunakan untuk mengatur nilai jenis anggota yang berbeda, selama jenis pengembalian ekstensi markup dapat ditetapkan ke nilai tersebut.

Untuk informasi tentang membuat ekstensi markup kustom, lihat ProvideValue. Untuk informasi selengkapnya tentang ekstensi markup secara umum, lihat Ekstensi Markup untuk Gambaran Umum XAML. Jika Anda membangun di WPF dan menggunakan atau membuat ekstensi markup untuk XAML, informasi relevan lainnya dapat ditemukan dalam topik Ekstensi Markup dan WPF XAML.

Metode ProvideValue dari setiap implementasi ekstensi markup dapat menggunakan IServiceProvider pada durasi yang dapat memberikan konteks. Ini IServiceProvider kemudian dikueri untuk layanan tertentu yang meneruskan informasi, seperti IProvideValueTarget atau IXamlTypeResolver. Untuk informasi selengkapnya tentang konteks layanan untuk ekstensi markup, lihat Konteks Layanan yang Tersedia untuk Jenis Konverter dan Ekstensi Markup.

Kelas turunan harus dikaitkan dengan MarkupExtensionReturnTypeAttribute untuk memberi tahu konsumen tentang jenis pengembalian paling spesifik yang tersedia dari implementasi ekstensi ProvideValue markup.

Konstruktor

MarkupExtension()

Menginisialisasi instans baru kelas yang berasal dari MarkupExtension.

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
ProvideValue(IServiceProvider)

Saat diimplementasikan di kelas turunan, mengembalikan objek yang disediakan sebagai nilai properti target untuk ekstensi markup ini.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga