Я создал простой UserControl
состоящий исключительно из Grid
и обнял Image
,
Теперь я хочу применить такие события, как «ManipulationDeltaEvent» и т. Д. Для сенсорного управления. Когда я назначаю обработчик событий, как
pic->ActionToken = pic->ManipulationDelta +=
ref new ManipulationDeltaEventHandler(this, &MainPage::SwipeImageEventHandler);
pic->CompletedToken = pic->ManipulationCompleted +=
ref new ManipulationCompletedEventHandler(this, &MainPage::ImageManipulationCompletedEventHandler);
Я получаю действительный EventRegistrationToken
s, но когда я хочу провести по элементу управления, просто ничего не происходит (я отлажен).
Я читаю о overriding
OnManipulationDelta
-метод из Windows::UI::Xaml::Controls::Control
, но я вот застрял:
protected:
void OnManipulationDelta
(Windows::UI::Xaml::Input::ManipulationDeltaRoutedEventArgs^ e) override {
}
Хотя только едва связаны, для C++\CLI
говорится о MSDN:
OnManipulationDelta
метод не имеет реализации по умолчанию. Переопределите OnManipulationDelta в производном классе для обработки события ManipulationDelta. Обязательно вызовите метод OnManipulationDelta базового класса, чтобы базовые классы получили событие.
Пожалуйста, дайте мне подсказку, спасибо.
РЕДАКТИРОВАТЬ
Переопределение не нужно
Вам необходимо указать ManipulationMode для элемента управления, а элементу управления должен быть ненулевой фон или заливка, например, Background = «Transparent».
Других решений пока нет …