Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Scrollviewer实际高度超过屏幕分辨率_C#_.net_Wpf_Scrollviewer_Actualheight - Fatal编程技术网

C# Scrollviewer实际高度超过屏幕分辨率

C# Scrollviewer实际高度超过屏幕分辨率,c#,.net,wpf,scrollviewer,actualheight,C#,.net,Wpf,Scrollviewer,Actualheight,我有一个带有以下行设置的网格: (对不起,我不能发布太多代码) 在该网格中,我有一个ScrollViewer,第0行有Height=“Auto”和verticalignment=“Stretch” 在第2行,我有另一个固定高度为60像素的网格 当我执行this.UpdateLayout(在UserControl中)时,scrollviewer.ActualHeight将转到2332,它与其中的图像大小相同,并且超过了分辨率屏幕。为什么不更新以适应屏幕 谢谢。如果您将外部网格垂直放置在f.i.aS

我有一个带有以下行设置的
网格
: (对不起,我不能发布太多代码)

在该网格中,我有一个
ScrollViewer
,第0行有
Height=“Auto”
verticalignment=“Stretch”

在第2行,我有另一个固定高度为60像素的网格

当我执行
this.UpdateLayout
(在
UserControl
中)时,
scrollviewer.ActualHeight
将转到2332,它与其中的图像大小相同,并且超过了分辨率屏幕。为什么不更新以适应屏幕


谢谢。

如果您将外部
网格
垂直放置在f.i.a
StackPanel
中,那么网格的高度可能没有限制,而
ScrollViewer
上可能没有垂直限制。将
网格
放置在
文件面板
中,或设置
网格
的(最大)高度。然后,
ScrollViewer
将具有有限的高度

使用的最小高度、最大高度

<ScrollViewer 
            VerticalAlignment="Top"
            Grid.Column ="0"    
            MinHeight="60"
            MaxHeight="190"
            Grid.Row="0"
            />


然后调整Scrollviewer的屏幕分辨率

网格本身在其中是什么?将第一行定义高度设置为“星形”-没有多大意义,因为它永远不会填满剩余空间,“星形”通常用于最后一行或最后一列。通常情况下,UpdtaeLayout是不需要的——毕竟它是异步工作的,所以您的观察窗口无论如何都不会显示正确的图形。网格有一个scrollviewer、一个网格和其他无关紧要的东西。我已经试过放0.8*和0.2*或任何类似的东西。这种方法解决不了问题。但是让我注意到了这个错误。userControl的主容器是一个stackpanel。当我把它改成网格的时候。成功了!:迪蒂
<ScrollViewer 
            VerticalAlignment="Top"
            Grid.Column ="0"    
            MinHeight="60"
            MaxHeight="190"
            Grid.Row="0"
            />