Для проекта мы пытаемся реализовать простой стек карт с использованием WPF и поверхностного SDK. До сих пор все идет хорошо. Мы используем LibraryStack для колоды карт и ScatterView для карт, которые были взяты из стека. Карты, а также стопка карточек реализованы как отдельные элементы управления пользователя, полученные от ScatterViewItem
и LibraryStack
. Функциональность Drag and Drop также работает.Изменение ориентации элемента, отображаемого в LibraryStack
Однако карты, отображаемые на LibraryStack, не выровнены, и каждая из них имеет другую ориентацию. Есть ли способ, которым это можно исправить, чтобы все карты были в одном направлении?
Вот XAML код CardDeck:
<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.RenderTransforms
без вращения или идентичная матрица не помогли.
Итерация через свойство Items
изменила свой путь, элементы отображаются, когда они перетаскиваются в ScatterView.
Итак, есть ли какой-либо возможный способ сделать это либо в XAML, либо в коде или другом трюке?
Благодарим вас заблаговременно.
Хорошо, большое спасибо. Я попробую ваш подход с помощью ScatterView. –