我对 WPF 非常陌生,并试图将应用程序从 VB6 移植到 C# 和 XAML。
我现在需要做的是从许多小图像中创建一个大图像,像一系列“瓷砖”一样排列。其中一些较小的将叠加在它们上面。
在 VB6 中,完成平铺和覆盖只需将 PaintPicture 方法与 PictureBox 控件一起使用。
这是我在一步中进行平铺和叠加的尝试(尽管实际上叠加可能事先发生):
ImageDrawing Drawing1 = new ImageDrawing(new BitmapImage(new Uri(@"c:\one.bmp",
UriKind.Absolute)),
new Rect(0, 0, 40, 130));
ImageDrawing Drawing2 = new ImageDrawing(new BitmapImage(new Uri(@"c:\two.bmp",
UriKind.Absolute)),
new Rect(40, 0, 45, 130));
ImageDrawing Drawing3 = new ImageDrawing(new BitmapImage(new Uri(@"c:\overlay.bmp",
UriKind.Absolute)),
new Rect(40, 0, 45, 130));
DrawingGroup myDrawingGroup = new DrawingGroup();
myDrawingGroup.Children.Add(Drawing1);
myDrawingGroup.Children.Add(Drawing2);
myDrawingGroup.Children.Add(Drawing3);
myImage.Source = new DrawingImage(myDrawingGroup);
平铺工作正常,但覆盖是不行的。我想知道如果
- 有人可以指出我完成覆盖的方法和
- 有人可以指出这是否是进行平铺的最佳方式。
谢谢!!