2012-09-21 63 views
1

我有一個擴展器,其中包含一個網格,其中有一個網格分離器。擴展器內部的GridSplitter擴展超出高度

文檔大綱和UI是這樣

enter image description here

這裏是代碼。

<Grid x:Name="TopGrid" ShowGridLines="True" > 
<Grid.RowDefinitions> 
    <RowDefinition Height="Auto" MaxHeight="150"/> 
    <RowDefinition Height="200" /> 
</Grid.RowDefinitions> 
<Expander x:Name="CompanyDescriptionExpander" Grid.ColumnSpan="2" 
      VerticalAlignment="Top" IsExpanded="True" Background="Black" > 
    <Expander.Header> 
    <Grid Width="{Binding ElementName=CompanyDescriptionExpander, 
         Path=ActualWidth}" Background="Aquamarine"> 
    <TextBlock Grid.Column="0" Text="Expander Header" Foreground="Black" /> 
    </Grid> 
    </Expander.Header> 
    <Expander.Content> 
    <Grid x:Name="DescriptionGrid" MaxHeight="130" ShowGridLines="True"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="*" MinHeight="25" MaxHeight="25"/> 
     <RowDefinition Height="Auto" MinHeight="25" MaxHeight="120"/> 
     <RowDefinition Height="4" MinHeight="10" MaxHeight="10"/> 
    </Grid.RowDefinitions> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="*" /> 
     <ColumnDefinition Width="Auto" /> 
    </Grid.ColumnDefinitions> 
    <TextBox Grid.Column="0" Background="Orange" Grid.Row="0" Grid.RowSpan="2" 
       MinHeight="40" MaxHeight="120" x:Name="DescriptionText" 
       Text="TextBlock Content" HorizontalAlignment="Stretch" 
       VerticalAlignment="Stretch" HorizontalContentAlignment="Stretch" 
       VerticalContentAlignment="Top" 
       HorizontalScrollBarVisibility="Hidden" 
       VerticalScrollBarVisibility="Auto" /> 
    <Button x:Name="SaveIconButton" Grid.Column="1" Grid.Row="0" Width="20" 
      Height="20" VerticalAlignment="Top" /> 
    <Button x:Name="CancelIconButton" Grid.Column="1" Grid.Row="1" Width="20" 
      Height="20" VerticalAlignment="Top" /> 
    <GridSplitter ResizeBehavior="PreviousAndCurrent" ResizeDirection="Rows" 
        Grid.Row="2" Grid.ColumnSpan="2" 
        Height="10" MaxHeight="10" HorizontalAlignment="Stretch" 
        VerticalAlignment="Top" Background="Red" /> 
    </Grid> 
    </Expander.Content> 
</Expander> 
<Button Grid.Row="1" Grid.Column="0" Margin="0,5,0,0" Height="20" 
     VerticalAlignment="Top" Background="Green" /> 
</Grid> 

當我們使用電網分離器它擴展

enter image description here

但它的推移甚至後的文本框達到其最大高度和gridsplitter去後面按鈕(綠色)。

我的問題情景,可以複製拷貝我的代碼項目中的

enter image description here

我想,當文本框達到最大高度,應立即停止。

如何做到這一點?

回答

2

在你DescriptionGrid改變從120第二排MaxHeight至95

三行合併最大高度在網超過電網本身的最大高度。