Я создаю элементы Grid динамически на панели стека.Когда объект отбрасывается на панель стека, он запускает событие, которое должно определить, где была точка отбрасывания относительно элемента Grid на StackPanel.Я использую WPF, поэтому некоторые ответы могут отличаться.
Например, у меня есть следующий код, который вызывается, когда объект сбрасывается на элемент сетки (который был ранее создан динамически).
/*Handles Drop Event From Grid Item*/
private void Grid_Drop(object sender,DragEventArgs e)
{
Object droppedData = e.getData(typeof(Object)); //This part is not important
/*Get the Grid that was dropped on*/
Grid grid = (Grid)sender;
/*Translate Drop Point in reference to Stack Panel*/
Point dropPoint = this.TranslatePoint(e.getPosition(this),StackPanel));
}
Здесь я остановился, мне нужно вычислить что-то вроде следующего:
IF dropPoint IS ABOVE THE MIDDLE POINT OF THE GRID
DO SOMETHING
ELSE IF THE dropPoint IS BELOW THE MIDDLE POINT OF THE GRID
DO SOMETHING