【问题标题】:Set grid.row maxheight by binding通过绑定设置grid.row maxheight
【发布时间】:2012-03-28 22:28:27
【问题描述】:

我有一个带有 4 行主网格的 WPF 应用程序。 我不会通过 XAML 或后面的代码将 row(0) 的属性 MaxHeight 绑定到内部控件的 Height 值。 row(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()

但运气不好……有什么建议吗?

【问题讨论】:

标签: wpf vb.net xaml binding resize


【解决方案1】:

试试ActualHeight

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

【讨论】:

  • 当我添加控件时,grid.row(0).Heigth 设置为“Auto”,然后我在 row(0) 内的 ScrollView 可以展开。在添加操作结束时,我有控件的尺寸。但是我无法正确设置 MaxHeigt。无论如何,使用 Heigth 属性图形效果更好,我不知道为什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-08-23
  • 2012-07-22
  • 1970-01-01
  • 1970-01-01
  • 2017-04-16
  • 2011-01-05
  • 1970-01-01
相关资源
最近更新 更多