1

我有一个 WPF .NET 3.5 应用程序,它使用 ImageDrawing 和 DrawingGroup 在彼此之上绘制透明平铺层。

我正在尝试使用 Metro 将其转换为 Windows 8。

Microsoft 在http://msdn.microsoft.com/en-us/library/windows/apps/hh465136.aspx的移植概述建议将 System.Windows 命名空间引用更改为 Windows.UI.Xaml。这对大多数事情都有帮助,但我没有找到 ImageDrawing 和 DrawingGroup,也没有在 Windows.UI.Xaml 中找到它们的任何提及。

它们存在于 Metro 中吗?如果是这样,在哪里,或者如果不是,我可以用什么来完成等效的任务?

这是我正在使用的示例代码:

    Windows.UI.Xaml.Controls.Image img = mapGrid.Children.Cast<Windows.UI.Xaml.Controls.Image>().First(e => Grid.GetRow(e) == 2 && Grid.GetColumn(e) == 4);

    if (img != null)
    {
        Uri back = new Uri("tiles/green.png", UriKind.RelativeOrAbsolute);
        Windows.UI.Xaml.Media.ImageDrawing background = new Windows.UI.Xaml.Media.ImageDrawing(new Windows.UI.Xaml.Media.Imaging.BitmapImage(back), new Rect(0, 0, 32, 32));
        Windows.UI.Xaml.Media.DrawingGroup myDrawingGroup = new Windows.UI.Xaml.Media.DrawingGroup();
        myDrawingGroup.Children.Add(background);
        // Add one or more foreground tiles here, removed for brevity.
    }

为了清楚起见,完全限定的名称空间(我希望如此)。

4

0 回答 0