2012-07-03 91 views
0

我有一個WPF應用程序,它包含兩列的Grid Element。 第二列還包含網格元素。 我有一個計時器,5秒後第二個網格的可見性變爲崩潰,但第一列不調整大小。自動調整WPF Grid Grid的大小

它可以自動調整第一列(第二網格的可見性設置爲倒塌後,以適應整個窗口?

-----------------------| 
|    |  | 
|    |grid2 | 
|    |  | 
|    |  | 
|--------------------- | 


<Grid> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="*"/> 
     </Grid.RowDefinitions> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*"/> 
      <ColumnDefinition Width="5"/> 
      <ColumnDefinition Width="200"/> 
     </Grid.ColumnDefinitions> 


     <!-- Browser --> 
     <my:WebControl Visibility="{Binding IsIEVisible,Converter={StaticResource BoolToVisibleconverter}}" Grid.Column="0" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Name="webControl1"> 

     </my:WebControl> 

     <GridSplitter Visibility="{Binding isVisiblePult, Converter={StaticResource BoolToVisibleconverter}}" HorizontalAlignment="Center" VerticalAlignment="Stretch" Width="5" Grid.RowSpan="2" Grid.Column="1"/> 

     <Grid Visibility="{Binding isVisiblePult, Converter={StaticResource BoolToVisibleconverter}}" Grid.Column="2"> 
      <Grid.RowDefinitions> 
       <RowDefinition Height="*"/> 
      </Grid.RowDefinitions> 
      <ListBox x:Name="ListChannels" Grid.Row="1" SelectedItem="{Binding SelectedChannel}" ItemsSource="{Binding Channels}" FontSize="14" Background="#FFD4ECFF"> 
       <ListBox.ItemTemplate> 
        <DataTemplate> 
         <TextBlock FontSize="17" Text="{Binding Name}"/> 
        </DataTemplate> 
       </ListBox.ItemTemplate> 

      </ListBox> 
     </Grid> 

回答

1

使第二個和第三個欄定義「自動」,然後設定明確的寬度在你的網格分離器和第二個網格,然後當您摺疊它們時,主網格將按照您的要求運行