Это (своего рода) ситуация, аналогичная описанной в SDK Sample Cart для MS Surface.
У меня есть приложение с двумя ScatterView. Первый охватывает полное окно Surface («поверхность»). Второй находится в объекте TagVisualization («pod»). Возможно, доступно более одного модуля (если на столе нет более одного тега).
Я хотел бы иметь возможность перетаскивать ScatterViewItem из «pod» на «поверхность» или в другой «pod». У меня нет проблем с обнаружением, если ScatterViewItem оставляет своего родителя ScatterView. Кроме того, нет проблем с переопределением ScatterViewItem.
Однако я хочу определить, на каком ScatterView перетаскивается элемент. В примере SDK они использовали визуальный элемент (в данном случае - эллипс), который находится ниже ScatterView. VisualTreeHelper.HitTest используется для определения того, находится ли контакт над эллипсом. Если это так, обнаружен «подключенный» ScatterView.
Я не думаю, что это очень элегантное решение. Я бы не хотел, чтобы там был визуальный элемент, просто чтобы определить, находится ли контакт поверх ScatterView.
Существуют ли лучшие способы для такого рода «испытаний»?
Спасибо,
Bart