VisualState.StateTriggers Properti

Definisi

Mendapatkan kumpulan objek StateTriggerBase yang menunjukkan kapan VisualState ini harus diterapkan. Jika ada (tidak semua) pemicu aktif, VisualState akan diterapkan.

public:
 property IVector<StateTriggerBase ^> ^ StateTriggers { IVector<StateTriggerBase ^> ^ get(); };
IVector<StateTriggerBase> StateTriggers();
public IList<StateTriggerBase> StateTriggers { get; }
var iVector = visualState.stateTriggers;
Public ReadOnly Property StateTriggers As IList(Of StateTriggerBase)

Nilai Properti

Kumpulan objek StateTriggerBase . Defaultnya adalah koleksi kosong.

Contoh

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>

Keterangan

Gunakan properti ini untuk membuat aturan di XAML yang menentukan kapan VisualState tertentu akan diterapkan. Anda menggunakan StateTriggers langsung di markup XAML Anda alih-alih memanggil VisualStateManager.GoToState dalam kode Anda.

Anda dapat menggunakan AdaptiveTrigger bawaan untuk membuat aturan berdasarkan ukuran jendela, yang berguna untuk membuat UI responsif. Anda juga dapat memperluas StateTriggerBase untuk membuat pemicu kustom Anda sendiri dan menggunakannya dalam properti StateTriggers.

Untuk contoh selengkapnya, lihat sampel Teknik Responsif XAML dan sampel Pemicu Status.

Berlaku untuk

Lihat juga