以这个简单的代码为例:
<window x:class=“wpfApplication1.window2”
xmlns=“http://schemas.microsoft.com/winfx/2006/xaml/presentation”
xmlns:x=“http://schemas.microsoft.com/winfx/2006/xaml”
title=“window2”height=“340”width=“600”>
<滚动查看器>
<grid background=“red”VerticalAlignment=“top”>
<grid.columndefinitions>
<columnDefinition width=“auto”minwidth=“20”/>
<列定义/>
</grid.columndefinitions>
<grid.rowdefinitions>
<行定义/>
<行定义/>
<行定义/>
<行定义/>
</grid.rowdefinitions>
<textBlock grid.row=“0”text=“1:”/>
<textbox grid.row=“0”grid.column=“1”height=“80”margin=“4”/>gt;
<textBlock grid.row=“1”text=“2:”/>
<textbox grid.row=“1”grid.column=“1”height=“80”margin=“4”/>gt;
<textBlock grid.row=“2”text=“3:”/>
<textBlock grid.row=“3”grid.column=“0”text=“4.”/>
和/格栅& GT;
</scrollviewer>
&窗/窗;
< /代码>
Visual Studio设计器正确显示所有内容:
然而,在运行时,这是结果:
注意第4行如何不再位于网格内?!呈现在它的外部。
此外,如果缩短窗口,垂直滚动条将变为可见,但它只滚动红色区域。无法滚动查看第4行。
如果从网格中删除VerticalAlignment=“to p”
有人能解释地球上发生了什么吗?是微软的bug吗?
我正在运行Visual Studio 2017社区版(完全更新),Win 10版本1803,其中包含.NET 4.7.2。
(我认为它与.NET 4.7.2有关,因为直到现在我才注意到这个问题。)
有一个解决方法,指定-<rowdefinition height=“auto”/>for all rows,but that should not be necessary…
Visual Studio设计器正确显示所有内容:
然而,在运行时,这是结果:
注意第4行如何不再位于网格内?!呈现在它的外部。
此外,如果缩短窗口,垂直滚动条将变为可见,但它只滚动红色区域。无法滚动查看第4行。
如果删除
VerticalAlignment="Top"
从
Grid
,则呈现似乎已修复,但滚动仍无法正常工作。
有人能解释到底发生了什么吗?是微软的bug吗?
我正在运行Visual Studio 2017社区版(完全更新),Win 10版本1803,其中包含.NET 4.7.2。
(我认为它与.NET 4.7.2有关,因为直到现在我才注意到这个问题)
有一个解决方法,请指定-
<RowDefinition Height="Auto" />
对于所有行,但这不应该是必需的…