我有一个看法:
<Grid>
<Canvas Grid.Row="1" Grid.Column="1" Grid.RowSpan="2" HorizontalAlignment="Stretch"
VerticalAlignment="Stretch" x:Name="ImageHolder">
<!-- there is something to do here !!! -->
<!-- like
<ImageCollection>
<DataTemplate For One Image>
<Image Canvas.Left="{Binding Path=posX}"
Canvas.Top="{Binding Path=posY}"
Source="{Binding Path=fileName}"
x:Name="{Binding Path=fileName}"
MouseDown="Img_MouseDown"
MouseUp="Img_MouseUp" />
</DataTemplate For One Image>
</ImageCollection> -->
</Canvas>
</Grid>
并且是.cs
public partial class WindowBoard : Window
{
protected MyCollectionVM _myCollection; // this class inherits of INotifyPropertyChanged
public WindowBoard()
{
InitializeComponent();
_myCollection = new MyCollectionVM();
}
}
我将在此 XAML 中动态添加图像,以便将 dataBinding 与我的 ViewModelClass 一起使用。
换句话说,我会知道如何使用一个 dataTemplate 图像创建一个 userControl,但对于许多图像是动态添加的。
我知道如何使用列表视图来做到这一点,但我不知道如何使用画布而不是 gridView/gridviewCellTemplate 等来做到这一点......