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

发布于 2024-10-14 02:08:17 字数 834 浏览 3 评论 0原文

我希望删除/修改 wp7 / Silverlight 屏幕顶部的图像。 屏幕包含 1. 画布,2. 画布顶部的几张图像堆栈。 画布上有多个图像。因此,画布上的图像就像二维图像阵列的层。 给定的是点(任意坐标)。访问图像对象是这里的问题。

我尝试使用 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;
        }
    }
}

I wish to delete / modify_the_source the image on top of a screen in wp7 / Silverlight.
The screen contains 1. A canvas, 2. Stack of several images on top of Canvas.
There are multiple images that spans the canvas. So, the images, on canvas, are like layers of 2D array of images.
Given is the Point(Any coordinate). Accessing image objects is the problem here.

I tried using VisualTreeHelper.FindElementsInHostCoordinates(tempFinal, canvasMain) to get the collection but it's not returning any Image.

Your help will be whole heartedly thanked.

my Code snippet to modify the image object is below:

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;
        }
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

无人问我粥可暖 2024-10-21 02:08:17

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

You should try to find your images in Canvas.Children.
Just use this istead of "VisualTreeHelper.FindElementsInHostCoordinates(tempFinal, canvasMain);" Canvas.Children is a collection of UIElement.
Read here for information about this collection. http://msdn.microsoft.com/en-us/library/system.windows.controls.panel.children.aspx

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文