Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight 在删除的usercontrol下查找控件的最佳方法_Silverlight_Drag And Drop_Findcontrol - Fatal编程技术网

Silverlight 在删除的usercontrol下查找控件的最佳方法

Silverlight 在删除的usercontrol下查找控件的最佳方法,silverlight,drag-and-drop,findcontrol,Silverlight,Drag And Drop,Findcontrol,我正在尝试对usercontrol实现拖放功能 我已经成功地使用google使其正常工作,但是,当删除一个控件时,我希望找到每个类似类型的控件,这些控件可能在它下面,也可能不在它下面 我现在的方法是检查每个控件,看看它是否在被丢弃的控件下。但是我想知道是否有更好的方法,比如一个find control函数,它可以检查给定范围内的控件?嗯 首先,逻辑树是控件组成的子控件树 第二,检查 您可以使用此功能: 或者您只能在MouseLeftButtonUp事件中使用此功能?您是指遍历逻辑树吗?如果我

我正在尝试对usercontrol实现拖放功能

我已经成功地使用google使其正常工作,但是,当删除一个控件时,我希望找到每个类似类型的控件,这些控件可能在它下面,也可能不在它下面

我现在的方法是检查每个控件,看看它是否在被丢弃的控件下。但是我想知道是否有更好的方法,比如一个find control函数,它可以检查给定范围内的控件?

  • 首先,逻辑树是控件组成的子控件树
  • 第二,检查

您可以使用此功能:


或者您只能在MouseLeftButtonUp事件中使用此功能

?您是指遍历逻辑树吗?如果我想知道逻辑树是什么,我可能是指遍历逻辑树。但正如我在帖子中所说的那样。我想找到与应用程序坐标相同的控件,在这里我不必检查每个控件就可以放下控件。
void xy_MouseMove(object sender, MouseEventArgs e)
    {
        if (m_IsDraging)
        {
            var res = VisualTreeHelper.FindElementsInHostCoordinates(e.GetPosition(null), elemenetWhichChildrenYouWantToCheck);
            //... check res for drop elements and react
        }
    }