对于一个项目,我们正在尝试使用 WPF 和 Surface SDK 实现一个简单的卡片堆栈。到目前为止一切进展顺利。我们将 LibraryStack 用于卡片组,将 ScatterView 用于从堆栈中取出的卡片。Cards 和 card stack 被实现为从ScatterViewItem
和派生的单独的用户控件LibraryStack
。拖放功能也可以使用。
但是,LibraryStack 上显示的卡片未对齐,并且每张卡片的方向都不同。有什么办法可以解决这个问题,使卡片都面向同一个方向?
这是 CardDeck 的 XAML 代码:
<s:LibraryStack x:Class="ActionCardAlt.Deck"
... (Standard xmlns declarations)
xmlns:local="clr-namespace:ActionCardAlt"
mc:Ignorable="d"
ItemTemplate="{DynamicResource CardBackground}"
>
<s:LibraryStack.Resources>
<DataTemplate x:Key="CardBackground">
<Image Source="Images/CardBacksideAlpha.png">
</DataTemplate>
</s:LibraryStack.Resources>
<s:LibraryStack.Template>
<ControlTemplate TargetType="{x:Type s:LibraryStack}">
<Grid>
<ItemsPresenter />
</Grid>
</ControlTemplate>
</s:LibraryStack.Template>
</s:LibraryStack>
CardDeck 由以下命令放置:
我会假设,在 DataTemplate 或 DataTemplate 内的 Image 中有一个选项来控制方向。但是,将矩阵设置Image.RenderTransforms
为无旋转或单位矩阵没有帮助。
遍历Items
属性只改变了方式,当它们被拖出到 ScatterView 时显示。
那么,是否有任何可能的方法可以在 XAML 或背后的代码或任何其他技巧中做到这一点?
非常感谢您提前。