[英]Sidemenu Windows Phone 8.1
我已經鼓勵在Windows Phone 8的android音樂播放器中使用彈出菜單,因此我使用Library Interactivity獲得了拖放功能。
現在看來,我無法再使用Windows Phone 8.1中的功能。 我無法使用Microsoft的自動轉換工具。 我們的項目適用於多種平台,並具有可移植的類庫。 我們不得不踢出Silverlight-Part,這就是為什么它不能轉換的原因。
我在網上搜索替代方法,例如使用手勢識別器進行搜索,但沒有運氣。
也許你們有些主意?
非常感謝任何答復。
這是舊庫的一部分:
<i:Interaction.Behaviors>
<el:MouseDragElementBehavior ConstrainToParentBounds="True"
Dragging="MouseDragRight_Dragging"
DragFinished="MouseDragRight_DragFinished"
DragBegun="MouseDrag_DragBegan"/>
</i:Interaction.Behaviors>
GestureRecognizer
出GestureRecognizer
。 MSDN:GestureRecognizer
GestureRecognizer類具有這些事件。
CrossSliding
當用戶在僅支持單軸平移的內容區域內(通過單點觸摸接觸)執行滑動或滑動手勢時發生。 手勢必須在垂直於此平移軸的方向上進行。
拖延
當用戶使用鼠標或鋼筆/手寫筆(單個觸點)執行滑動或滑動手勢時發生。 當用戶執行按住手勢(單次觸摸,鼠標或筆/手寫筆接觸)時發生。
在ManipulationCompleted
當輸入點被抬起並且所有隨后的慣性運動(平移,擴展或旋轉)結束時發生。
在ManipulationInertiaStarting
在操作過程中抬起所有接觸點並且操作速度顯着到足以引發慣性行為(抬起輸入指針后繼續平移,擴展或旋轉)時發生。
在ManipulationStarted
在啟動一個或多個輸入點並且隨后的運動(平移,擴展或旋轉)開始時發生。
ManipulationUpdated
在啟動一個或多個輸入點並進行后續運動(平移,擴展或旋轉)之后發生。
RightTapped
無論輸入設備如何,都將指針輸入解釋為右擊手勢時發生。 當將指針輸入解釋為輕擊手勢時發生。
感謝Chubosaurus軟件,我弄清楚了:
1:使用所需設置創建一個GestureRecognizer
實例
GestureRecognizer _gestureRecognizer = new GestureRecognizer();
_gestureRecognizer.GestureSettings = GestureSettings.CrossSlide ;
2:連接所需的事件
_gestureRecognizer.CrossSliding += _gestureRecognizer_CrossSliding;
3:根據所需的手勢,必須將事件路由到識別器。 在這種情況下
private void MainViewGrid_PointerMoved(object sender, PointerRoutedEventArgs e)
{
_gestureRecognizer.ProcessMoveEvents(e.GetIntermediatePoints(MainViewGrid));
}
private void MainViewGrid_PointerPressed(object sender, PointerRoutedEventArgs e)
{
_gestureRecognizer.ProcessDownEvent(e.GetCurrentPoint(MainViewGrid));
}
private void MainViewGrid_PointerReleased(object sender, PointerRoutedEventArgs e)
{
_gestureRecognizer.ProcessUpEvent(e.GetCurrentPoint(MainViewGrid));
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.