WPF:大尺寸可缩放到容器,小尺寸可滚动的视图?
我正在构建一个描绘图表的控件。控件的内容(相当复杂)将尝试进行缩放,以尽可能适合分配的空间。然而,并非所有量表都有效。内容不能无限缩小。例如,图表上的方框宽度应至少为20像素。因此,当窗口太小,即使是最小大小也无法容纳内容时,缩放应该停止,滚动条必须出现WPF:大尺寸可缩放到容器,小尺寸可滚动的视图?,wpf,layout,scroll,size,containers,Wpf,Layout,Scroll,Size,Containers,我正在构建一个描绘图表的控件。控件的内容(相当复杂)将尝试进行缩放,以尽可能适合分配的空间。然而,并非所有量表都有效。内容不能无限缩小。例如,图表上的方框宽度应至少为20像素。因此,当窗口太小,即使是最小大小也无法容纳内容时,缩放应该停止,滚动条必须出现 我无法在WPF中找到一个优雅的解决方案。非常欣赏任何设计理念。将内容的水平和垂直对齐设置为拉伸,但也将最小宽度和最小高度设置为适当的值,将内容放在ScrollViewer中,其Horizontal和VerticalScrollBarVisibi
我无法在WPF中找到一个优雅的解决方案。非常欣赏任何设计理念。将内容的
水平和垂直对齐设置为拉伸,但也将最小宽度
和最小高度
设置为适当的值,将内容放在ScrollViewer
中,其Horizontal
和VerticalScrollBarVisibility
设置为Auto
这应该行得通,也许
例如:
<Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
<ScrollViewer HorizontalScrollBarVisibility="Auto" VerticalScrollBarVisibility="Auto">
<Button
MinHeight="400"
MinWidth="400"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Content="Buttons!"/>
</ScrollViewer>
</Window>
是的,你完全理解我的问题。我不能直接使用你的例子,因为我有面板和一些测量,但你的回答让我意识到:当你的面板在滚动查看器中时,测量后,你计算出允许你生存的最小可能大小,而在安排时,你用完了提供的空间。因此,您需要计算布局两次。这似乎是显而易见的,但我第一次没有明白。谢谢很高兴有帮助:)顺便说一句,MSDN上有一些有趣的文章,例如&。