Я создал новый UIElement, производный от Systen.Windows.Controls.Canvas.
Я пытаюсь обработать щелчки, сделанные на этом объекте.
Все делается в C #, в коде (без XAML) с использованием Silverlight Phone Toolkit (февральская версия, как я хочу нацеливаться на 7.0)
В моем конструкторе объектов я делаю:
//Create gesture handling
gl = GestureService.GetGestureListener(this);
gl.Flick += new EventHandler<FlickGestureEventArgs>(gl_Flick);
и gl_Flick это просто:
void gl_Flick(object sender, FlickGestureEventArgs e)
{
if (e.HorizontalVelocity >= 0)
{
// Right swipe (flick)
if (gotSwipe != null)
{
gotSwipe(this, e);
}
}
}
Теперь в конструкторе я также создаю и добавляю несколько текстовых блоков
По какой-то причине щелчок генерирует событие, только если выполняется над одним из этих текстовых блоков. Если я сделаю щелчок по любой пустой области холста, ничего не произойдет.
Поскольку я не могу найти никаких документов, связанных с инструментарием Silverlight, все было сделано методом проб и ошибок.
Как я могу это сделать, чтобы щелчок распознавался при выполнении в любом месте над этим холстом, а не только над дочерними элементами, которые в нем содержатся?