2012-02-06 49 views
0

我想爲我的全景視圖放置廣告網格。可見度設置爲倒塌的網格線,仍然保留黑點

問題是,當我試圖通過設置可見性摺疊來隱藏廣告網格(當應用程序不是'試用')時,我看不到廣告了,但我看到一個保留的黑色空間廣告的大小。以下是我的代碼:

<phone:PhoneApplicationPage xmlns:my1="clr-namespace:Google.AdMob.Ads.WindowsPhone7.WPF;assembly=Google.AdMob.Ads.WindowsPhone7" xmlns:my="clr-namespace:adMob7;assembly=adMob7" 
    x:Class="WP7SQLiteClient._MainPage" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:phone="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone" 
    xmlns:shell="clr-namespace:Microsoft.Phone.Shell;assembly=Microsoft.Phone" 
    xmlns:controls="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls" 
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
    xmlns:local="clr-namespace:WP7SQLiteClient" 
    mc:Ignorable="d" d:DesignWidth="480" d:DesignHeight="696" 
    FontFamily="{StaticResource PhoneFontFamilyNormal}" 
    FontSize="{StaticResource PhoneFontSizeNormal}" 
    Foreground="{StaticResource PhoneForegroundBrush}" 
    SupportedOrientations="Portrait" Orientation="Portrait" 
    shell:SystemTray.IsVisible="True"> 
    <phone:PhoneApplicationPage.Resources> 

    </phone:PhoneApplicationPage.Resources> 
     <!--LayoutRoot is the root grid where all page content is placed--> 
    <Grid x:Name="LayoutRoot" Background="Transparent"> 
     <!--Pivot Control--> 
     <Grid.RowDefinitions> 
      <RowDefinition Height="*"/> 
      <RowDefinition Height="Auto"/> 
     </Grid.RowDefinitions> 

     <controls:Panorama Grid.Row="0" x:Name="panoramaMain" SelectionChanged="Panorama_SelectionChanged"> 
      <controls:PanoramaItem Header="messages"> 


      </controls:PanoramaItem> 
      <controls:PanoramaItem Header="share"> 

      </controls:PanoramaItem> 
     </controls:Panorama> 

     <Grid Grid.Row="1" Background="Yellow" x:Name="grid" Margin="0" Visibility="Collapsed" > 
    <adduplex:AdControl x:Name="ad" Margin="0" xmlns:adduplex="clr-namespace:AdDuplex;assembly=AdDuplex.AdControl.Silverlight" 
         AppId="7671" 
         /> 
     </Grid> 
    </Grid> 


</phone:PhoneApplicationPage> 

如何隱藏或刪除廣告而未保留黑色空間?

+0

您能顯示行定義嗎? – 2012-02-06 11:44:30

+0

@Erno沒有行定義 – Alex 2012-02-06 11:52:18

+1

然後你怎麼能這樣做:'Grid.Row =「1」' – 2012-02-06 11:59:29

回答

1

確保包含該控件的網格行會崩得:

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="*"/> 
     <RowDefinition Height="auto"/> 
    </Grid.RowDefinitions> 
    <myControl Grid.Row="1" /> 
</Grid> 

包含控件現在會崩潰的第二排。當高度設置爲「*」時,該行仍然是「可見的」。

+0

如果您將行高設置爲「自動」,則可能需要(取決於具體情況)定義MaxHeight,以防萬一內容變得愚蠢。 – ZombieSheep 2012-02-06 14:14:40

+0

網格仍然不塌陷。即使當我的控制從可見性崩潰開始設置時,仍然有空間保留 – Alex 2012-02-07 08:50:08

+0

如果我將高度從「自動」設置爲「30」,我只能看到30px的控件,但仍有空間保留(如果最初的保留空間是80,如果我顯示30px,仍然有50px的空白保留) – Alex 2012-02-07 08:53:50