Итак, я использовал клавишу '*', чтобы разделить общую ширину на различные области, которые реагируют. Но очевидно, что я не могу использовать сетку везде, некоторые элементы не поддерживают ее и т. Д. Поэтому мой вопрос: как мне сохранить гибкость этих элементов? Самый последний сценарий, в котором я наткнулся на эту проблему, - это попытка использовать ListView с внутренним GridView. Насколько я понимаю, GridView не поддерживает объявление столбцов GridView с шириной в процентах и использует только фиксированное значение ширины. Какой обходной путь для этого? Это должно быть так? Я бы очень хотел сделать свой интерфейс максимально гибким. Прямо сейчас меня смущает фиксированная ширина, потому что я проектирую пользовательский интерфейс для экрана 50 "2160p. Однако мой экран, на котором я проектирую, намного меньше (13" 1080p), и, следовательно, элементы масштабируются изсуществование, и я не могу его использовать. Вот пример того, что я ищу или какой идеальный сценарий.
Текущий сценарий
<ListView ItemsSource="{Binding NotApprovedChanges}" Margin="40 90 40 40" FontSize="26" Name="nonApprovedChangesList">
<ListView.View>
<GridView>
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="ID" Width="150" DisplayMemberBinding="{Binding Id}" />
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="Requester" Width="200" DisplayMemberBinding="{Binding Requester}" />
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="Date" Width="250" DisplayMemberBinding="{Binding Date}" />
</GridView>
</ListView.View>
</ListView>
Что я ищу
<ListView ItemsSource="{Binding NotApprovedChanges}" Margin="40 90 40 40" FontSize="26" Name="nonApprovedChangesList">
<ListView.View>
<GridView>
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="ID" Width="*" DisplayMemberBinding="{Binding Id}" />
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="Requester" Width="2*" DisplayMemberBinding="{Binding Requester}" />
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="Date" Width="*" DisplayMemberBinding="{Binding Date}" />
</GridView>
</ListView.View>
</ListView>
или
<ListView ItemsSource="{Binding NotApprovedChanges}" Margin="40 90 40 40" FontSize="26" Name="nonApprovedChangesList">
<ListView.View>
<GridView>
<GridView.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="2* />
<ColumnDefinition Width="*" />
</GridView.ColumnDefinitions>
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="ID" GridView.Column="0" DisplayMemberBinding="{Binding Id}" />
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="Requester" GridView.Column="1" DisplayMemberBinding="{Binding Requester}" />
<GridViewColumn HeaderContainerStyle="{StaticResource ListViewStyle}" Header="Date" GridView.Column="2" DisplayMemberBinding="{Binding Date}" />
</GridView>
</ListView.View>
</ListView>