0

これらの列と行の定義を持つグリッドがあります

<Grid.ColumnDefinitions>
  <ColumnDefinition Width="Auto"
                    MinWidth="154" />
  <ColumnDefinition Width="Auto"
                    MinWidth="175" />
  <ColumnDefinition />
  <ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
  <RowDefinition Height="Auto" />
  <RowDefinition Height="Auto" />
  <RowDefinition Height="*" />
</Grid.RowDefinitions>

グリッド内にはリストビューがあり、(グリッドビュー) があります。

<ListView Grid.Column="0"
          Grid.Row="2"
          Name="ListView"
          ItemsSource="  {Binding MessageFields}"
          Margin="10,12,0,-5"
          Grid.ColumnSpan="3">
  <ListView.View>
    <GridView>
      <GridViewColumn Width="100">
        <GridViewColumnHeader Content="{StaticResource IdColumnContent}" />
      </GridViewColumn>
      <GridViewColumn Width="100">
        <GridViewColumnHeader Content="{StaticResource CodeColumnContent}" />

      </GridViewColumn>
      <GridViewColumn Width="Auto">
        <GridViewColumnHeader Content="{StaticResource NameColumnContent}" />

      </GridViewColumn>
      <GridViewColumn Width="100">
        <GridViewColumnHeader Content="{StaticResource PositionColumnContent}" />

      </GridViewColumn>
      <GridViewColumn Width="100">
        <GridViewColumnHeader Content="{StaticResource MappedListColumnContent}" />

      </GridViewColumn>
      <GridViewColumn>
        <GridViewColumnHeader Content="{StaticResource MappingRuleColumnContent}" />

      </GridViewColumn>
    </GridView>
  </ListView.View>

グリッド内には TreeView もあります

   <TreeView 
   Grid.Column="3"  Grid.Row="2" ItemsSource="{Binding ,  Mode=TwoWay}">

ウィンドウを最大化すると、ツリービューはその場所にとどまりますが、ウィンドウのサイズ変更に従います。しかし、私のリストビューはウィンドウに合わせて拡大しますが、最後の列はウィンドウに合わせて伸び、ウィンドウのサイズを縮小/復元すると縮小します。ウィンドウのサイズ変更時にグリッドとツリーを適切に伸ばすにはどうすればよいですか?

4

1 に答える 1

0

基本的に、あなたの最後の「列」はGridView、ウィンドウの残りのスペースを埋めていますか? そして、それは実際には列ではなく、ただの空きスペースですか?

その場合は、 WPF の回答を確認する必要があります: ListView の GridView の最後の列を拡張する

ただし、個人的にはListView/を捨てて、 DataGridを使用します(.net 4 以降を使用している場合)。GridView

于 2013-06-26T21:22:05.923 に答える