【发布时间】:2013-05-07 15:36:47
【问题描述】:
我创建了一个简单的UserControl,仅由一个Grid 和一个包含的Image 组成。
现在我想应用“ManipulationDeltaEvent”等事件来进行触控。当我分配像
这样的事件处理程序时pic->ActionToken = pic->ManipulationDelta +=
ref new ManipulationDeltaEventHandler(this, &MainPage::SwipeImageEventHandler);
pic->CompletedToken = pic->ManipulationCompleted +=
ref new ManipulationCompletedEventHandler(this, &MainPage::ImageManipulationCompletedEventHandler);
我收到有效的EventRegistrationTokens,但是当我想在控件上滑动时,什么也没有发生(我已调试)。
我从Windows::UI::Xaml::Controls::Control 读到了overriding OnManipulationDelta-方法,但我在这里卡住了:
protected:
void OnManipulationDelta
(Windows::UI::Xaml::Input::ManipulationDeltaRoutedEventArgs^ e) override {
}
虽然只是几乎没有关系,但对于C++\CLI,它在MSDN 上声明:
OnManipulationDelta 方法没有默认实现。在派生类中重写 OnManipulationDelta 以处理 ManipulationDelta 事件。请务必调用基类的 OnManipulationDelta 方法,以便基类接收事件。
请指教,谢谢。
编辑
重写是不必要的
【问题讨论】:
标签: c++ windows-runtime overriding winrt-xaml c++-cx