Я делаю адаптивный макет для моего универсального приложения win 10. По какой-то причине, когда я пытаюсь изменить значение maximumRowsOrColumns wrapGrid в триггерах visualState, это работает некорректно.Изменение значения максимума WrapGrid по максимумуRowsOrColums с помощью триггеров visualState не работает
Ну, это действительно работает, если пользователь меняет размер окна, но при запуске программы кажется, что adaptiveTrigger не влияет на это значение.
Вот код:
<Hub>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState x:Name="wideView">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="720" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="WrapPanel.MaximumRowsOrColumns" Value="3" />
</VisualState.Setters>
</VisualState>
<VisualState x:Name="narrowView">
<VisualState.Setters>
<Setter Target="WrapPanel.MaximumRowsOrColumns" Value="2" />
</VisualState.Setters>
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="0" />
</VisualState.StateTriggers>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
<HubSection>
<DataTemplate>
<GridView>
<GridView.ItemsPanel>
<ItemsPanelTemplate>
<WrapGrid Orientation="Horizontal"
x:Name="WrapPanel"/>
</ItemsPanelTemplate>
</GridView.ItemsPanel>
<GridViewItem>
<Rectangle Width="250" Height="100" Fill="Red" Margin="6" />
</GridViewItem>
<GridViewItem>
<Rectangle Width="250" Height="100" Fill="Yellow" Margin="6" />
</GridViewItem>
<GridViewItem>
<Rectangle Width="250" Height="100" Fill="Green" Margin="6" />
</GridViewItem>
<GridViewItem>
<Rectangle Width="250" Height="100" Fill="Blue" Margin="6" />
</GridViewItem>
</GridView>
</DataTemplate>
</HubSection>
</Hub>