WPF浮动层的有关问题

WPF浮动层的问题
Canvas里面有若干子容器,包括Canvas、DockPanel、Grid等,这些控件是浮动的。怎么让这些容器的宽度随外部Canvas的改动而改动?

------解决方案--------------------
引用:
引用:Canvas作为容器是不可以的
要Grid才可以

Grid的话怎样定位子控件和做浮动呢?

控件属性
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
不设置宽和高
通过设置Margin来定位