我有一个在用户控件之间切换很多的应用程序,我希望它们拉伸到窗口的最大大小,但是有些东西阻止它们这样做,而是占用尽可能少的空间。
我注意到我在用户控件中的组件调整了它们应该的大小(即锁定到控件底部的按钮保持在原位,控件只是没有到达窗口底部,按钮最终应该结束)而且我没有t 在它们上设置任何与大小相关的属性(我尝试了几个,但没有一个达到预期的效果)。所以我假设问题出在显示控件的主要组件上。是这样设置的:
<Window.Resources>
<DataTemplate DataType="{x:Type vm:MessageViewModel}">
<vw:MessageView/>
</DataTemplate>
<DataTemplate DataType="{x:Type vm:ConnectionsViewModel}">
<vw:ConnectionView/>
</DataTemplate>
...
</Window.Resources>
<Grid>
<ItemsControl ItemsSource="{Binding ViewModels}" Margin="0,20,0,0"/>
...
</Grid>
感谢 Erno,我使用的解决方案:
改变
<ItemsControl ItemsSource="{Binding ViewModels}" Margin="0,20,0,0"/>
至
<ItemsControl ItemsSource="{Binding ViewModels}" Margin="0,20,0,0">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<Grid/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
</ItemsControl>