删除屏幕顶部的图像对象,屏幕包含画布,wp7 / Silverlight中画布上任意点的两个图像

时间:2011-01-24 06:38:11

标签: silverlight image windows-phone-7 canvas

我希望在wp7 / Silverlight中删除/ modify_the_source屏幕顶部的图像。 屏幕包含1.画布,2。在Canvas顶部堆叠多个图像。 横跨画布的图像有多个。因此,画布上的图像就像2D图像阵列一样。 给定是Point(任何坐标)。访问图像对象是这里的问题。

我尝试使用VisualTreeHelper.FindElementsInHostCoordinates(tempFinal, canvasMain)来获取集合,但它没有返回任何图像。

全心全意地感谢你的帮助。

我修改图片对象的代码片段如下:

IEnumerable<UIElement> uiElementCollection = VisualTreeHelper.FindElementsInHostCoordinates(tempFinal, canvasMain);
if (null == uiElementCollection)
{
    return;
}
foreach (UIElement uiElement in uiElementCollection)
{
    if (uiElement is Image)
    {
        Image image = uiElement as Image;
        if (null != image)
        {
            BitmapImage image1 = new BitmapImage();
            image1.UriSource = new Uri("BackGround_Ball.jpg", UriKind.RelativeOrAbsolute);
            image.Source = image1;
        }
    }
}

1 个答案:

答案 0 :(得分:0)

您应该尝试在Canvas.Children中找到您的图像。 只需使用它,而不是“VisualTreeHelper.FindElementsInHostCoordinates(tempFinal,canvasMain);” Canvas.Children是UIElement的集合。 请阅读此处了解有关此系列的信息。 http://msdn.microsoft.com/en-us/library/system.windows.controls.panel.children.aspx