Контроллер / Разработка игр на Silverlight для начинающих

Мы проработали модель и визуализацию модели. А теперь нужно обрабатывать действия игрока. Они сводятся к щелчкам мышью по карточкам. Следовательно, нам потребуется всего одна функция обработчик.

Во время подготовки вида prepareViewer(), мы добавляли обработчики:


arrCanvasImg[nIndex].MouseLeftButtonDown += new MouseButtonEventHandler(GameBoard_MouseLeftButtonDown);

А теперь код этого обработчика:


void GameBoard_MouseLeftButtonDown(object sender, MouseButtonEventArgs e)
{
Canvas canvas = sender as Canvas;
object oData = canvas.DataContext;
int nIndex = Convert.ToInt16(oData);
gameBoard.openCard(nIndex);
repaint();
}

Полученный объект преобразовываем в класс Canvas, извлекаем индекс карточки из свойства DataContext, вызываем открытие карточки в модели и наконец перерисовываем экран.

Комментариев нет:

Отправить комментарий

Да, я внимательно слушаю