Xaml 正在保留桌面应用程序未启动的事件

Xaml 正在保留桌面应用程序未启动的事件,xaml,touch,win-universal-app,Xaml,Touch,Win Universal App,在我的通用Windows应用程序中,我正在订阅ListViewItem DataTemplat中的保留事件e: <ListView.ItemTemplate> <DataTemplate> <Grid Holding="ListViewItem_Holding"> <FlyoutBase.AttachedFlyout>

在我的通用Windows应用程序中,我正在订阅ListViewItem DataTemplat中的保留事件e:

        <ListView.ItemTemplate>
            <DataTemplate>
                <Grid Holding="ListViewItem_Holding">
                    <FlyoutBase.AttachedFlyout>
                        <MenuFlyout Placement="Right">
                            <!-- using the Click event -->
                            <MenuFlyoutItem Text="delete" Click="DeleteProductClick" />

                            <MenuFlyoutItem Text="edit" />
                        </MenuFlyout>
                    </FlyoutBase.AttachedFlyout>
                    <TextBlock Text="{Binding Name}" />
                </Grid>
            </DataTemplate>
        </ListView.ItemTemplate>


使用Visual Studio模拟器和触摸模式,所有这些都可以正常工作,但我找不到一种方法来使用鼠标调用上下文菜单。我是否必须使用手势识别器才能使上下文菜单适用于桌面应用程序(与平板电脑版本相反)?

您可以在以下网站找到:

按住鼠标和笔/触笔输入

默认情况下,鼠标输入不会生成保持事件,无论鼠标按钮被按住多长时间,或者哪个按钮被按住。但是,当按下并释放鼠标右键或同等按钮时,鼠标设备和某些笔设备可以触发RightTapped

注意:如果您使用自己的手势识别器并在设置中指定HoldWithMouse,则有一种方法可以将鼠标动作视为保持动作


在这种情况下,您可能必须使用自定义或指针事件。

您将在以下位置找到:

按住鼠标和笔/触笔输入

默认情况下,鼠标输入不会生成保持事件,无论鼠标按钮被按住多长时间,或者哪个按钮被按住。但是,当按下并释放鼠标右键或同等按钮时,鼠标设备和某些笔设备可以触发RightTapped

注意:如果您使用自己的手势识别器并在设置中指定HoldWithMouse,则有一种方法可以将鼠标动作视为保持动作

在这种情况下,您可能必须使用自定义或指针事件。

我将使用该事件,以便当用户在基于触摸的设备中按住某个项目时,以及当用户在基于鼠标的设备中用鼠标右键单击时,上下文菜单显示:

<Page.Resources>
   <MenuFlyout x:Key="flyout">
     ...
   </MenuFlyout>

</Page.Resources>
...

<ListView ....>
  <ListView.ItemTemplate>
     <DataTemplate>
       <Grid RightTapped="grid_RightTapped">
            ...
       </Grid>
    </DataTemplate>
  </ListView.ItemTemplate>
</ListView>
正如您所见,我使用了一个共享弹出按钮,您可以按照自己的方式进行操作。

我将使用该事件,这样,当用户在基于触摸的设备上按住某个项目时,以及当用户在基于鼠标的设备上用鼠标右键单击时,上下文菜单将显示:

<Page.Resources>
   <MenuFlyout x:Key="flyout">
     ...
   </MenuFlyout>

</Page.Resources>
...

<ListView ....>
  <ListView.ItemTemplate>
     <DataTemplate>
       <Grid RightTapped="grid_RightTapped">
            ...
       </Grid>
    </DataTemplate>
  </ListView.ItemTemplate>
</ListView>
正如您所见,我使用了共享弹出按钮,您可以按照自己的方式进行