zxc*_*bnm 22 data-binding wpf height xaml
我在一个窗口中,Grid包含a RadioButton,a TextBox和a Button,分别在0,1,2列中.他们都将自己的高度设置为自动.
然后,在窗口的另一部分,我在Grida Label,a TextBox和a中有另一个Button,在0,1和2列中.高度也设置为auto.
我遇到的问题是第一个网格的高度小于第二个网格的高度.我想这是因为Label强迫第二个更高.我怎样才能使第一个网格与第二个网格一样高?我试过这样做:
在第二个网格SomeName中命名文本框.
在<Grid.ColumnDeclarations>第一个Grid中,我将高度从"auto"更改为"{Binding ElementName = SomeName,Path = Height}".
但那并没有做我想要的.大小是一样的.我猜Binding基本上是"自动"并把它扔到那里,最终是同样的事情.
另外,我正在寻找一种不涉及将高度设置为固定值的解决方案.
ito*_*son 44
绑定到ActualHeight而不是Height属性:
<RowDefinition Height="{Binding ActualHeight, ElementName=otherTextBox}" />
Run Code Online (Sandbox Code Playgroud)
将两个网格放在共享的大小范围内,并用于SharedSizeGroup将行高锁定在一起:
<SomeContainer Grid.IsSharedSizeScope="True"> <!-- Could be the Window or some more nearby Panel -->
<Grid>
<Grid.RowDefinitions>
<RowDefinition SharedSizeGroup="LabelAndRadioButtonGroup" />
</Grid.RowDefinitions>
<Label Grid.Row="0" />
</Grid>
<Grid>
<Grid.RowDefinitions>
<RowDefinition SharedSizeGroup="LabelAndRadioButtonGroup" />
</Grid.RowDefinitions>
<RadioButton Grid.Row="0" />
</Grid>
</SomeContainer>
Run Code Online (Sandbox Code Playgroud)
另请参见如何:在MSDN中共享网格之间的大小调整属性.
| 归档时间: |
|
| 查看次数: |
28008 次 |
| 最近记录: |