标签: contextmenu

左键单击显示ContextMenu仅使用XAML

WPF的默认行为ContextMenu是在用户右键单击时显示它.我希望在ContextMenu用户左键单击时显示.看起来这应该是一个简单的属性ContextMenu,但事实并非如此.

我操纵它,以便我LeftMouseButtonDown在代码隐藏中处理事件,然后显示上下文菜单.

我在我的项目中使用MVVM,这意味着我将DataTemplates用于具有上下文菜单的项目.摆脱代码隐藏并找到一种使用XAML中的触发器或属性显示上下文菜单的方法会更加优雅.

这个问题的任何想法或解决方案?

.net wpf xaml contextmenu mvvm

7
推荐指数
2
解决办法
7696
查看次数

C#Windows'打开方式>'上下文菜单行为

可能重复:
文件类型与应用程序的关联(C#)

我正在编写一个C#Windows应用程序来可视化和修改'.build'文件(nant脚本).我希望用户能够在Windows资源管理器中右键单击.build文件并选择"打开方式"选项以允许在我的应用程序中修改该文件.

为了使用这种机制,我的程序需要支持什么?我的程序可能需要对Windows执行上下文菜单支持?

我想知道是否有人能指出我关于这个主题的好文章/教程的方向.

c# windows open-with contextmenu

7
推荐指数
1
解决办法
5269
查看次数

如何根据文件和文件夹管理jsTree的上下文菜单

右键单击后,我坚持要管理上下文菜单.实际上我需要为文件夹显示一些contextmenu项,为文件夹显示contextmenu的一些项.

单击文件夹上下文菜单将如下所示:

  • 创建
  • 去掉
  • 改名

点击文件上下文菜单将如下所示:

  • 创建
  • 去掉
  • 改名

点击后有没有办法管理这个菜单.我查看了文档和其他博客,但没有获得有用的内容.

你能指导我一些事情,以便我可以这样实施.

提前致谢

contextmenu jstree

7
推荐指数
1
解决办法
5637
查看次数

上下文菜单的WPF子菜单

如果上下文菜单在xaml中是"硬编码的",则很容易添加子菜单.例如:

<ContextMenu>
    <MenuItem Header="Comm1" Command="{Binding Blabla1}">
        <MenuItem Header="SubComm1" Command="{Binding Blabla2}"></MenuItem>
    </MenuItem>
    <MenuItem Command="Comm2"></MenuItem>
    <MenuItem Command="Comm3"></MenuItem>
</ContextMenu>
Run Code Online (Sandbox Code Playgroud)

这意味着,ContextMenu有三个元素(Comm1,Comm2和Comm3),Comm1有子菜单SubComm1.

我让ContextMenu更加灵活:

<ContextMenu ItemsSource="{Binding ContextMenuItemsSource}">
    <ContextMenu.ItemContainerStyle>
        <Style TargetType="MenuItem">
            <Setter Property="Header" Value="{Binding ContextMenuCommandHeader}"></Setter>
            <Setter Property="Command" Value="{Binding ContextMenuCommand}"></Setter>
        </Style>
     </ContextMenu.ItemContainerStyle>
</ContextMenu>
Run Code Online (Sandbox Code Playgroud)

基本上我在ContextMenu中可以有任意数量的元素,任何元素都可以有任何命令.如何将子菜单添加到ContextMenu元素?

c# wpf contextmenu

7
推荐指数
1
解决办法
2万
查看次数

如何实现NSCollectionView的上下文菜单

在我的OSX应用程序中,我有一个集合视图,它是一个子类NSCollectionView.

除了上下文菜单之外,我对这些事情都感到满意,我还想不通.

所以我想要的是:

  • 右键单击集合视图项将显示上下文菜单
  • 从菜单中选取的选项(删除,编辑等)将应用于执行点击的项目.

我知道怎么做,NSOutlineView或者NSTableView不是为了集合视图.

我无法弄清楚如何获取项目的索引点击.

有没有人对我如何实现这个有任何想法?

任何形式的帮助都非常感谢!

macos cocoa contextmenu nscollectionview

7
推荐指数
2
解决办法
1954
查看次数

限制/移动窗口边界中的上下文菜单(右键单击)

每当您右键单击浏览器(或任何其他应用程序)的边缘时,上下文菜单将溢出窗口,但不会溢出屏幕.

我希望上下文菜单始终位于窗口边界,所以当我点击底边附近时,它应该显示顶部的菜单.假设窗口的尺寸总是大于上下文菜单.

这可能吗?如果没有,有任何解决方法吗?

PS我没有构建应用程序窗口,只是应用程序的查看器.

上下文菜单越界

c# windows wpf winapi contextmenu

7
推荐指数
1
解决办法
581
查看次数

在menuitem中输入WPF ContextMenu itemtemplate,menuitem

我有以下xaml:

<ContextMenu ItemsSource="{Binding TestItems}">
     <ContextMenu.ItemTemplate>
          <DataTemplate DataType="models:TestItemModel">
              <MenuItem IsChecked="{Binding IsSelected}" Header="{Binding Header}"  />
          </DataTemplate>
     </ContextMenu.ItemTemplate>
</ContextMenu>
Run Code Online (Sandbox Code Playgroud)

TestItemModel类仅包含IsSelected布尔属性和Header字符串属性.

TestItems是TestItemModels的列表.

数据绑定到contextmenu,但它在UI中反映为MenuItem中的MenuItem(具有额外的边距,使菜单非常大).我可以通过将DataTemplate中的MenuItem更改为TextBox来解决这个问题,但是我不能再绑定IsSelected(我需要可视化属性).

我对此有几个问题:

  • 为什么MenuItem中有MenuItem?这对我来说没有意义,因为它没有绑定到menuitem列表而是绑定到TestItemModel列表.
  • 我该如何解决这个问题?

c# wpf contextmenu menuitem

7
推荐指数
1
解决办法
9049
查看次数

UWP ListView项目上下文菜单

我在网上搜索如何添加上下文菜单ListView.到目前为止,我发现了一个实际显示上下文的内容

<ListView>
    ...
    RightTapped="ContactsListView_RightTapped" >
    ...
    <ListView.Resources>
        <MenuFlyout x:Name="allContactsMenuFlyout">
            <MenuFlyout.Items>
                <MenuFlyoutItem x:Name="Edit"  Text="Edit"/>
                <MenuFlyoutItem x:Name="Remove" Text="Remove"    Click="Remove_Click"/>
            </MenuFlyout.Items>
        </MenuFlyout>
    </ListView.Resources>
    ...
</ListView>

private void ContactsListView_RightTapped(object sender, RightTappedRoutedEventArgs e) {
    ListView listView = (ListView)sender;
    allContactsMenuFlyout.ShowAt(listView, e.GetPosition(listView));
}

private void Remove_Click(object sender, RoutedEventArgs e) {

}
Run Code Online (Sandbox Code Playgroud)

问题是我无法获得显示上下文菜单的项目.另一个问题是上下文菜单也显示在列表视图项之外(例如,在边框上).由于触发的事件是RightTapped,我不确定是否会在长按移动设备上显示上下文菜单.我无法测试它,因为我的模拟器当前不工作.因为它应该是通用的Windows应用程序,我期待一些非常简单有效的方法为ListView项目创建上下文菜单.

xaml contextmenu win-universal-app

7
推荐指数
1
解决办法
5914
查看次数

在Android 7中,ContextMenu的位置搞砸了

我有一个带有简单列表视图和上下文菜单的应用程序.在android 7之前,一切看起来都不错:

单击列表底部的项目时: 在此输入图像描述

单击列表顶部的项目时: 在此输入图像描述

但机智android 7 ......

单击列表底部的项目时: 在此输入图像描述

单击列表顶部的项目时: 在此输入图像描述

上下文菜单的位置是否有任何变化?

android contextmenu android-7.0-nougat

7
推荐指数
1
解决办法
1447
查看次数

创建新文件后,资源管理器中的IShellView :: SelectItem

ContextMenuShell扩展中创建文件后,如何在资源管理器中选择文件?

我使用IFileOperationAPI 创建了文件,并尝试IShellView::SelectItem()IFileProgressSink::FinishOperations()回调中使用。但是文件选择仅会短暂闪烁,然后再次取消选择。我假设资源管理器注意到文件的某些更改并更新了视图。

我可以半可靠地等待(?)10毫秒FinishOperations后再调用IShellView::SelectItem使其工作,但是在文件操作后是否有更明智的选择文件的方法?

windows winapi contextmenu shell-extensions

7
推荐指数
1
解决办法
222
查看次数