[英]Draggable and Auto-Resized UserControls in WPF Window
我正在制作WPF Hud,但我不是这样的WPF专家。
我需要一个带有可拖动用户控件的窗口,当我扩展/缩小窗口时,这些控件会自动调整大小。
我可以通过使用Canvas容器并使用Window的MouseMove事件来实现第一个功能。
我可以通过使用Grid容器并将两个子项的HorizontalAlignment VerticalAlignment设置为Strech来实现第二个功能。
当然,我不能同时使用两个容器,所以有没有第三个容器可以帮助我完成所要求的工作?
实际上,我正在尝试使用“画布”并手动确定孩子的宽度/高度,但是我不喜欢这种方法。
有什么建议吗?
谢谢,卢卡
省略有关拖动控件等的详细信息,请尝试以下操作:
<Window x:Class="AdHocWpf.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Height="439" Width="616"
Title="MainWindow">
<Viewbox>
<Canvas Width="600" Height="400" Background="Blue">
<Rectangle Stroke="Orange" Width="200" Height="100" Canvas.Left="10" Canvas.Top="5"/>
<Ellipse Stroke="Yellow" Width="350" Height="200" Canvas.Left="225" Canvas.Top="150"/>
</Canvas>
</Viewbox>
</Window>
这将创建一个初始尺寸为600x400的Canvas对象。 调整窗口大小时,画布及其中的对象将被缩放,以使它们占用相同数量的相对空间。 您还需要适当调整包含窗口的大小...常规可调整大小的窗口在垂直方向上具有39像素的铬色,在水平方向上具有16像素的铬,因此请考虑在内。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.