图像不会导致行大小更改

时间:2014-02-26 22:07:18

标签: wpf xaml windows-store-apps

我有一个简单的Grid,有三列。在其中一行中,我(按列顺序):TextBlockTextBoxButtonButton包含Image内容。

我的问题是,Image始终会显示大小以显示其全部内容,从而放大按钮。我不关心图像源的大小;我希望Button的大小与TextBlockTextBox的行相同。我不想为图像大小指定硬编码值。这不是重点。如果用户的主题和/或字体发生更改,Grid行仍应按预期工作,Button应始终保持正确的大小。

我尝试了ViewBox,各种对齐属性和绑定。没运气。任何人的想法?

   <TextBlock VerticalAlignment="Center" Margin="4,0" x:Uid="RONumber" />
   <TextBox x:Name="tbRO" InputScope="Number" MaxLength="8" Grid.Column="1" Margin="4" />
   <Button x:Name="btnSearch" Click="Search_Click" Grid.Column="2">
      <Image Source="Long Source Removed For Readability" />
   </Button>

在下面的图像中,您可以看到TextBox,右侧是带有图像的Button。正下方是另一个正确大小的TextBox。如果我删除按钮,顶部的TextBox大小相同。

enter image description here

1 个答案:

答案 0 :(得分:0)

好的,这就是答案。因为元素在同一行,所以XAML不起作用。我在(甚至发布这个问题之前)对ActualHeight的绑定总是为0.我将按钮的MaxHeight绑定到屏幕另一个区域上随机TextBox的ActualHeight。这很有用。