FrameworkElement.Style Properti

Definisi

Mendapatkan atau mengatur Gaya instans yang diterapkan untuk objek ini selama tata letak dan penyajian.

public:
 property Style ^ Style { Style ^ get(); void set(Style ^ value); };
Style Style();

void Style(Style value);
public Style Style { get; set; }
var style = frameworkElement.style;
frameworkElement.style = style;
Public Property Style As Style
<frameworkElement Style="{StaticResource styleResourceKey}"/>

Nilai Properti

Gaya yang diterapkan untuk objek, jika ada; jika tidak, null. Default untuk FrameworkElement yang dibangun secara default adalah null.

Keterangan

Mengatur properti Gaya secara langsung bukanlah cara paling umum untuk menata tampilan elemen UI. Sebagai gantinya, Anda memengaruhi penampilan elemen UI melalui salah satu teknik ini:

  • Anda sering mengatur properti UI individual dari elemen UI sebagai atribut di XAML. FrameworkElement.Style hanya berlaku untuk elemen saat ini, dan nilai apa pun dari StyleFrameworkElement.Style ditimpa oleh nilai properti lokal, sehingga pengaturan nilai lokal lebih langsung dan lebih dapat diprediksi. Untuk informasi selengkapnya tentang bagaimana nilai Gaya dan nilai properti lokal berhubungan, lihat Gambaran umum properti dependensi.
  • Penulis kontrol biasanya menulis kontrol yang dapat di-templat, tetapi juga dilengkapi dengan templat default. Aplikasi Anda dapat menggunakan kontrol dan mengubah tampilannya dengan menyediakan ControlTemplate baru, yang merupakan bagian dari Gaya yang ditentukan dalam sumber daya. Gaya ini biasanya diterapkan menggunakan fitur gaya implisit , bukan dengan mengatur Gaya. Untuk informasi selengkapnya, lihat Kontrol gaya.
  • Penulis kontrol juga mengekspos properti yang mereferensikan bagian kontrol yang dapat memiliki gaya atau nilai yang diterapkan hanya pada bagian tersebut, sehingga Anda tidak perlu benar-benar mengorek ulang kontrol. Di sini Anda mengatur properti yang lebih spesifik, bukan FrameworkElement.Style.
  • Model status visual sering mengatur ulang gaya kontrol pada durasi sebagai respons terhadap perubahan status yang memanifestasikan diri mereka ke pengguna secara visual. Misalnya, templat kontrol biasanya memiliki status "Terfokus" yang menambahkan indikator fokus visual ke tampilan kontrol sehingga pengguna keyboard dapat melihat elemen mana di UI yang memiliki fokus keyboard saat ini. Untuk informasi selengkapnya tentang konsep status visual, lihat Mulai Cepat: Templat kontrol.

Anda dapat mengubah nilai properti individual yang telah diatur dalam gaya. Misalnya, Anda dapat mengatur properti Templat pada durasi meskipun properti ini telah diatur oleh gaya. Atau Anda dapat menambahkan setter ke koleksi di Setters. Namun, segera setelah gaya tersebut ditempatkan dalam penggunaan oleh objek yang dimuat, Gaya harus dianggap disegel. Anda dapat mendeteksi status ini dengan memeriksa nilai IsSealed untuk Gaya. Gaya dianggap sedang digunakan segera setelah direferensikan oleh objek yang dimuat yang tersambung ke pohon objek dari halaman UI yang ditampilkan. Gaya dan Setter-nya juga dapat dianggap disegel saat objek menggunakan gaya tersebut menaikkan peristiwa Yang Dimuat. Mencoba mengubah properti individual dari gaya yang digunakan (seperti properti dalam koleksi Setters ) memberikan pengecualian.

Kelas yang berasal dari Kontrol memiliki titik masuk tambahan yang berguna untuk mengontrol penulis sehubungan dengan gaya dan aplikasi templat. FrameworkElement mendefinisikan panggilan balik virtual OnApplyTemplate yang dipanggil sebelum Dimuat. Kelas yang berasal dari Kontrol dapat mengambil alih panggilan balik ini untuk menyesuaikan nilai properti yang diatur oleh templat sebelum gaya digunakan.

Jika dikueri pada durasi, properti Gaya tidak mengembalikan gaya yang berasal dari templat yang diterapkan, atau status visual aktif. Ini hanya mengembalikan gaya yang secara eksplisit diatur oleh properti Gaya. Selain itu, ini tidak mengembalikan gaya implisit.

Berlaku untuk