AdaptiveTrigger Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Mewakili aturan deklaratif yang menerapkan status visual berdasarkan properti jendela.
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class AdaptiveTrigger : StateTriggerBase
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class AdaptiveTrigger : StateTriggerBase
Public Class AdaptiveTrigger
Inherits StateTriggerBase
<AdaptiveTrigger .../>
- Warisan
- Atribut
Persyaratan Windows
Rangkaian perangkat |
Windows 10 (diperkenalkan dalam 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (diperkenalkan dalam v1.0)
|
Contoh
Tip
Untuk informasi selengkapnya, panduan desain, dan contoh kode, lihat Tata letak responsif dengan XAML.
Jika Anda memiliki aplikasi WinUI 2 Gallery yang terinstal, buka aplikasi untuk melihat kontrol yang sedang berjalan.
Contoh ini menunjukkan cara menggunakan properti StateTriggers dengan AdaptiveTrigger untuk membuat aturan deklaratif dalam markup XAML berdasarkan ukuran jendela. Secara default, orientasi StackPanel adalah Vertikal. Saat lebar jendela = >720 piksel efektif, perubahan VisualState dipicu, dan orientasi StackPanel diubah menjadi Horizontal.
<Page>
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState>
<VisualState.StateTriggers>
<!--VisualState to be triggered when window width is >=720 effective pixels.-->
<AdaptiveTrigger MinWindowWidth="720"/>
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="myPanel.Orientation" Value="Horizontal"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<StackPanel x:Name="myPanel" Orientation="Vertical">
<TextBlock Text="This is a block of text. It is text block 1. "
Style="{ThemeResource BodyTextBlockStyle}"/>
<TextBlock Text="This is a block of text. It is text block 2. "
Style="{ThemeResource BodyTextBlockStyle}"/>
<TextBlock Text="This is a block of text. It is text block 3. "
Style="{ThemeResource BodyTextBlockStyle}"/>
</StackPanel>
</Grid>
</Page>
Untuk sampel yang lebih rinci, lihat sampel Pemicu status.
Keterangan
Gunakan AdaptiveTriggers untuk membuat aturan yang secara otomatis memicu perubahan VisualState saat jendela adalah tinggi atau lebar yang ditentukan. Saat Anda menggunakan AdaptiveTriggers di markup XAML, Anda tidak perlu menangani peristiwa Window.SizeChanged dan memanggil VisualStateManager.GoToState dalam kode Anda. Selain itu, saat Anda menggunakan AdaptiveTriggers di VisualStateManager, Anda dapat melihat efek perubahan adaptif ini langsung pada permukaan desain XAML di Microsoft Visual Studio.
Anda dapat menggunakan properti MinWindowWidth dan MinWindowHeight baik secara independen atau bersama satu sama lain. XAML ini menunjukkan contoh penggunaan kedua properti bersama-sama. Pemicu menunjukkan bahwa VisualState yang sesuai akan diterapkan ketika lebar jendela saat ini adalah >= 720 piksel efektif DAN tinggi jendela saat ini adalah >= 900 piksel efektif.
<AdaptiveTrigger MinWindowWidth="720" MinWindowHeight="900"/>
Konstruktor
AdaptiveTrigger() |
Menginisialisasi instans baru kelas AdaptiveTrigger |
Properti
Dispatcher |
Mendapatkan CoreDispatcher yang dikaitkan dengan objek ini. CoreDispatcher mewakili fasilitas yang dapat mengakses DependencyObject pada utas UI meskipun kode dimulai oleh utas non-UI. (Diperoleh dari DependencyObject) |
MinWindowHeight |
Mendapatkan atau mengatur tinggi jendela minimum tempat VisualState harus diterapkan. |
MinWindowHeightProperty |
Mengidentifikasi properti dependensi MinWindowHeight . |
MinWindowWidth |
Mendapatkan atau mengatur lebar jendela minimum tempat VisualState harus diterapkan. |
MinWindowWidthProperty |
Mengidentifikasi properti dependensi MinWindowWidth . |
Metode
ClearValue(DependencyProperty) |
Menghapus nilai lokal properti dependensi. (Diperoleh dari DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
Mengembalikan nilai dasar apa pun yang ditetapkan untuk properti dependensi, yang akan berlaku dalam kasus di mana animasi tidak aktif. (Diperoleh dari DependencyObject) |
GetValue(DependencyProperty) |
Mengembalikan nilai efektif properti dependensi saat ini dari DependencyObject. (Diperoleh dari DependencyObject) |
ReadLocalValue(DependencyProperty) |
Mengembalikan nilai lokal properti dependensi, jika nilai lokal ditetapkan. (Diperoleh dari DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
Mendaftarkan fungsi pemberitahuan untuk mendengarkan perubahan pada DependencyProperty tertentu pada instans DependencyObject ini. (Diperoleh dari DependencyObject) |
SetActive(Boolean) |
Mengatur nilai yang menunjukkan apakah pemicu status aktif. (Diperoleh dari StateTriggerBase) |
SetValue(DependencyProperty, Object) |
Mengatur nilai lokal properti dependensi pada DependencyObject. (Diperoleh dari DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
Membatalkan pemberitahuan perubahan yang sebelumnya terdaftar dengan memanggil RegisterPropertyChangedCallback. (Diperoleh dari DependencyObject) |