2009-09-03 66 views
0

Hai 目前我有这样的网格。WPF中的网格扩展

<Grid Name="tGrid1" Grid.Row="0" Background="Black" > 
    </Grid> 



    <Grid Name="Grid2" Grid.Row="1" Background="LightBlue" > 
    </Grid> 



    <Grid Name="Grid3" Grid.Row="2" Background="LightGray" Height="auto" > 

    </Grid> 




    <Grid Name="Grid4" Grid.Row="3" Background="LightGreen" > 
    <Button HorizontalAlignment="Left" IsEnabled="True" Margin="13.5,5,0,5" Name="TestBtn" Width="50" Click="test_Click" >Test</Button> 
    </Grid> 

</Grid> 

我想要的是,当我点击测试按钮电网1和电网2有倒塌的空间已被占用与网格3对应。这意味着外部网格的总高度为500,网格3应该占据高度= 465,并且网格4应该打开y身高= 35。 我该怎么做?我应该如何改变我的网格高度定义? Thanx提前 卡娅

回答

0

海 我找到了解决办法。

<DockPanel > 
<Grid Name="tGrid1" Grid.Row="0" DockPanel.dock="Top" Background="Black" > 
</Grid> 

<Grid Name="Grid2" Grid.Row="1" DockPanel.dock="Top" Background="LightBlue" > 
</Grid> 

<Grid Name="Grid4" Grid.Row="3" DockPanel.dock="Bottom" Background="LightGreen" > 
<Button HorizontalAlignment="Left" IsEnabled="True" Margin="13.5,5,0,5" Name="TestBtn" Width="50" Click="test_Click" >Test</Button> 
</Grid> 

<Grid Name="Grid3" Grid.Row="2" DockPanel.dock="Top" Background="LightGray" Height="auto" > 

</Grid> 
</DockPanel> 




private void test_Click(object sender, RoutedEventArgs e) 
    { 
    tGrid1.visibility=visibility.collapsed; 
Grid2.visibility=Visibility.collapsed; 
    } 

这工作正常。 谢谢 Kaja

+5

什么...?你感谢你自己吗? – sergiol 2012-09-19 17:06:53

0

不知道这是你在问什么,但在test_Click方法,你可以这样做:用“崩溃”你的意思是“隐藏”

private void test_Click(object sender, RoutedEventArgs e) 
    { 
    tGrid1.Width = 0; 
    tGrid1.Height = 0; 
    Grid2.Width = 0; 
    Grid2.Height = 0; 

    Grid3.Height = 465; 
    Grid4.Height = 35; 
    } 

如果这将通过设置tGrid1Grid2heightwidth工作,以0

+0

这不工作。它删除Grid1和Grid2,但Grid3不扩展。 无论如何thanku 4你的时间。让我知道如果你找到任何其他方式 – Kaja 2009-09-03 16:19:50