通过绑定设置grid.row maxheight

时间:2012-03-12 14:02:33

标签: wpf vb.net xaml binding resize

我有一个带有4行主网格的WPF应用程序。 我不会通过XAML或后面的代码将行(0)的属性MaxHeight绑定到控件内部的Height值。 行(0)内的控件是ScrollViewer,在运行时,我在SV中添加控件。

我尝试过使用XAML代码:

<Grid Name="MainGrid">
    <Grid.RowDefinitions>
        <RowDefinition Height="Auto" MinHeight="64" MaxHeight="{Binding Path=ActualHeight, ElementName=HeaderScrollViewer}"/>
        <RowDefinition Height="Auto"/>
        <RowDefinition Height="*"/>
        <RowDefinition Height="50"/>
 </Grid.RowDefinitions>

通过代码背后:

  Grid.SetRow(Me.MainGrid, 0)
  Me.MainGrid.MaxHeight = Me.HeaderScrollViewer.Height
  Me.MainGrid.UpdateLayout()

但没有运气......有什么建议吗?

1 个答案:

答案 0 :(得分:0)

使用ActualHeight尝试。

  Grid.SetRow(Me.MainGrid, 0)
  Me.MainGrid.MaxHeight = Me.HeaderScrollViewer.ActualHeight <---
  Me.MainGrid.UpdateLayout()