2013-10-14 6 views
0

Я это Grid в моем WPF применения:WPF удалить сетки из окна

<Grid Name="MainGrid"> 

    <Grid.RowDefinitions> 
     <RowDefinition Height="70" Name="BarRowDef" /> 
     <RowDefinition Height="*"/> 
    </Grid.RowDefinitions> 

    <Grid Name="BarGrid" Grid.Row="0" Height="70" VerticalAlignment="Top" Background="#FF802C2C"> 
     <Button Content="History" Focusable="False" Width="100" Height="60" HorizontalAlignment="Left" VerticalAlignment="Center" Name="HistoryButton" Click="HistoryButton_Click"/> 
    </Grid> 

    <Grid Name="MiddleGrid" Grid.Row="1"> 
     <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="*"/> 
     </Grid.ColumnDefinitions> 
     <WebBrowser HorizontalAlignment="Stretch" Name="Browser" VerticalAlignment="Stretch" LoadCompleted="Finish_Load" Grid.Column="1"/> 
    </Grid> 


</Grid> 

И я хочу, чтобы браузер будет иметь полный вариант экрана. Так что я сделал это в случае EnterFullscreen называется это:

BarRowDef.Height = new GridLength(0); 

А что случиться, что начало браузера из верхней части страницы, а в нижней части у меня есть пустое пространство в размере BarGrid. Любая идея, в чем проблема?

Редактировать

Это полный EnterFullScreenMode метод:

public void EnterFullScreenMode() 
    { 
     BarRowDef.Height = new GridLength(0); 

     if (this.WindowState == System.Windows.WindowState.Maximized) 
     { 
      this.WindowState = System.Windows.WindowState.Normal; 
     } 

     this.WindowStyle = System.Windows.WindowStyle.None; 
     this.WindowState = System.Windows.WindowState.Maximized; 

     IsFullScreen = true; 
    } 
+0

ли вы получить эту работу? – Daniel

ответ

1

Я не уверен, что вы имеете в виду, EnterFullscreen событие чего?

Вы можете попробовать это:

BarGrid.Visibility = Visibility.Hidden; 

вместо:

BarRowDef.Height = new GridLength(0); 
1

Я считаю, установив в Visibility.Hidden еще может привести к некоторым пробельные быть оказаны.

Вы можете установить содержимое строки (BarGrid) на Collapsed, что означает: «Не отображать элемент и не резервировать место для него в макете».

BarGrid.Visibility = Visibility.Collapsed; 

Edit: Дополнительная информация от комментариев

также обеспечить высоту установки удалены из RowDefinition. Вместо:

<RowDefinition Height="70" Name="BarRowDef"/> 

Использование:

<RowDefinition Height="Auto"/> 
+0

Я попробовал, и он все еще дает мне белую область – MTA

+1

Даже с настройкой высоты, удаленной из RowDefinition? например вместо у вас будет Daniel

+0

Я поместил ваш код в тестовый проект и установил Height to Auto для RowDefinition, и настройка видимости BarGrid на Collapsed, похоже, работает на меня. Надеюсь, он тоже для вас тоже. – Daniel

Смежные вопросы