我想做一些其他项目堆叠,但我不知道它有多简单。 这是正常的经纱面板堆叠(从左上方到右上方,然后没有位置,然后下一个项目将堆叠在第一个左上方的自由位置):
但是,我想要从右下角到右上角堆叠,如果没有下一个项目的位置,那么我想下一个项目将堆叠在第一个左下方的自由位置。
像这样:
| X
| X
| XX
| XX
可靠的是,仅使用WarpPanel无法实现这一点。我对新想法持开放态度。
任何人都可以帮助我吗?
答案 0 :(得分:1)
这比生产代码更开玩笑,但它有效! :)
XAML:
<Window.Resources>
<Style TargetType="FrameworkElement" x:Key="rotateItPlease">
<Setter Property="RenderTransform">
<Setter.Value>
<ScaleTransform ScaleX="-1" ScaleY="-1" />
</Setter.Value>
</Setter>
<Setter Property="RenderTransformOrigin" Value="0.5,0.5" />
</Style>
</Window.Resources>
然后将此样式应用于WrapPanel
及其所有子项(如果将wrapPanel作为某些ItemsControl的一部分,则会更容易):
<WrapPanel Orientation="Vertical" Style="{StaticResource rotateItPlease}">
<Button Style="{StaticResource rotateItPlease}">Hello</Button>
<Button Style="{StaticResource rotateItPlease}">Hello</Button>
<!-- More buttons here -->
</WrapPanel>
答案 1 :(得分:0)
我认为你不能自定义WrapPanel来做到这一点。但是,您始终可以创建自定义面板。
在网页上搜索WPF中的自定义面板实现,您将获得大量教程。