我希望gridview宽度大小随窗口大小的改变而改变。我试图在xaml和c#中使用以下内容执行此操作。虽然这确实有用,因为页面加载了不同的窗口大小,但它不会随着窗口大小的改变而动态改变。
我尝试使用自适应触发器但是我无法通过网格宽度来改变大小。
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="GridViewWith">
<VisualState x:Name="Big">
<VisualState.StateTriggers>
<AdaptiveTrigger MinWindowWidth="600"/>
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="gridView.Width" Value="500"/>
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
网格本身:
<StackPanel Grid.Column="1" Grid.Row="2" Grid.ColumnSpan="7" Margin="0,40,0,0">
<GridView x:Name="gridView" ScrollViewer.HorizontalScrollMode="Enabled" ScrollViewer.HorizontalScrollBarVisibility="Visible" HorizontalAlignment="Left" IsItemClickEnabled="True" SelectionMode="None" ItemClick="gridView_SelectionChanged" VerticalAlignment="Top" Height="601">
<GridView.ItemTemplate>
<DataTemplate>
<StackPanel>
<TextBlock Foreground="Black" Text="{Binding Name}"/>
<StackPanel Orientation="Horizontal" >
<TextBlock Foreground="Black" xml:space="preserve" Text="Size: " />
<TextBlock Foreground="Black" Text="{Binding Size}" />
</StackPanel>
</StackPanel>
</DataTemplate>
</GridView.ItemTemplate>
</GridView>
</StackPanel>
答案 0 :(得分:0)
当屏幕尺寸发生变化时,您可以使用自适应触发器自动调整网格的大小 它非常易于使用。