如何在Windows 10中使用模板控制中的AdaptiveTrigger(我使用Windows 10 Pro Insider Preview Build 10074)。當窗口大小改變時,Window.Current.SizeChanged事件不會啓動。什麼是適當的方法來進行流體控制?這是我嘗試做,但沒有任何反應時,屏幕的尺寸變化:windows 10模板控制和AdaptiveTrigger
XAML template:
<ResourceDictionary
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:App1">
<Style TargetType="local:CustomControl1" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="local:CustomControl1">
<Border>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="VisualSizeStates">
<VisualState x:Name="Small">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowHeight="0" MinWindowWidth="0" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="Rect.Fill" Value="Green"/>
</VisualState.Setters>
</VisualState>
<VisualState x:Name="Big">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowHeight="1000" MinWindowWidth="1000" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="Rect.Fill" Value="Blue"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<Rectangle x:Name="Rect" Fill="Red" />
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</ResourceDictionary>
謝謝!我發現觸發器在頁面級別上工作。因此,我創建了兩個可視狀態 - GreenVisualState和BlueVisualState以及一個用於更改視覺狀態的依賴屬性GoToVisualState。當頁面大小改變時,自適應觸發器將屬性設置爲期望的狀態。 – user3506220
實際上,如果使用UserControl包裝DataTemplate內容,AdaptiveTriggers將在DataTemplate中工作。檢查這個答案:http://stackoverflow.com/questions/32088500/adaptivetrigger-and-datatemplate –