标签: contextmenu

如何将文件夹的上下文菜单项添加到Windows资源管理器

我已经了解了如何通过向注册表添加密钥,在Windows资源管理器上向文件添加右键单击上下文菜单项.即我可以在资源管理器中右键单击文件并针对该文件运行自定义应用程序.

我想对一个文件夹做同样的事情,但还没有找到办法(尚).我看到有关创建/编写自定义上下文菜单处理程序的文章,但我宁愿不去那里.

我在这里找到了一篇关于如何将级联上下文菜单项添加到桌面和资源管理器中的"计算机"的文章,但这对任何文件夹都不起作用.

我希望能够将我的自定义应用程序添加到上下文菜单中,并使其适用于文件和文件夹.有没有办法在不编写上下文菜单处理程序的情况下执行此操作?

explorer contextmenu

83
推荐指数
5
解决办法
8万
查看次数

为不同的节点类型配置jstree右键单击contextmenu

我在网上看到了一个示例,展示了如何自定义jstree右键单击上下文菜单的外观(使用contextmenu插件).

例如,允许我的用户删除"文档"而不删除"文件夹"(通过隐藏文件夹的上下文菜单中的"删除"选项).

现在我找不到那个例子.谁能指出我正确的方向?官方文档没有真正帮助.

编辑:

由于我希望默认的上下文菜单只有一个或两个小的更改,我宁愿不重新创建整个菜单(当然,如果这是唯一的方法我会的).我想做的是这样的事情:

"contextmenu" : {
    items: {
        "ccp" : false,
        "create" : {
            // The item label
            "label" : "Create",
            // The function to execute upon a click
            "action": function (obj) { this.create(obj); },
            "_disabled": function (obj) { 
                alert("obj=" + obj); 
                return "default" != obj.attr('rel'); 
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但它不起作用 - 创建项目始终被禁用(警报永远不会出现).

jquery contextmenu jstree

80
推荐指数
4
解决办法
7万
查看次数

在上下文菜单下单击查找节点

如何找出树列表中的哪个节点已激活上下文菜单?例如,右键单击节点并从菜单中选择一个选项.

我无法使用TreeViews的SelectedNode属性,因为该节点只是右键单击而未选中.

c# treeview contextmenu winforms

69
推荐指数
4
解决办法
5万
查看次数

如何在多片段活动中处理onContextItemSelected?

我目前正在尝试调整我的应用程序以使用"适用于Android v4的兼容性库",以便为Android 1.6用户提供使用片段的好处.

上下文菜单的实现似乎很棘手:

  • 该应用程序的主要活动是扩展FragmentActivity 类.
  • 这些片段都基于一个扩展Fragment类的类.
  • fragment类在其onCreateView()方法中调用 registerForContextMenu()并覆盖 onCreateContextMenu()onContextItemSelected()方法.

对于onCreateContextMenu(),这非常有效.上下文菜单从资源文件中膨胀,并根据所选项目进行略微修改(基于listView ...即使片段不是ListFragment).

选择上下文菜单项时会发生此问题. 从第一个添加的片段开始,为所有当前存在的片段调用onContextItemSelected().

在我的例子中,片段用于显示文件夹结构的内容.当打开子文件夹片段的上下文菜单并选择菜单项时,首先在上层调用onContextItemSelected()(取决于此时允许/可见的片段数).

现在,我使用活动级别上的字段的变通方法,该字段包含调用其onCreateContextMenu()的最后一个片段的标记.这样,当存储的标记与getTag()不同时,我可以在onContextItemSelected()的开头调用"return super.onContextItemSelected(item)" .但这种方法对我来说有点脏.

为什么在所有片段上调用onContextItemSelected()?而不只是一个调用onCreateContextMenu()的人

处理这个问题最优雅的方法是什么?

android contextmenu android-fragments android-support-library

68
推荐指数
5
解决办法
2万
查看次数

从ContextMenu中的MenuItem绑定ElementName

是否有人注意到带有ElementName的Bindings无法正确解析MenuItem对象中包含的ContextMenu对象?看看这个样本:

<Window x:Class="EmptyWPF.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" Height="300" Width="300"
    x:Name="window">
    <Grid x:Name="grid" Background="Wheat">
        <Grid.ContextMenu>
            <ContextMenu x:Name="menu">
                <MenuItem x:Name="menuItem" Header="Window" Tag="{Binding ElementName=window}" Click="MenuItem_Click"/>
                <MenuItem Header="Grid" Tag="{Binding ElementName=grid}" Click="MenuItem_Click"/>
                <MenuItem Header="Menu" Tag="{Binding ElementName=menu}" Click="MenuItem_Click"/>
                <MenuItem Header="Menu Item" Tag="{Binding ElementName=menuItem}" Click="MenuItem_Click"/>
            </ContextMenu>
        </Grid.ContextMenu>
        <Button Content="Menu" 
                HorizontalAlignment="Center" VerticalAlignment="Center" 
                Click="MenuItem_Click" Tag="{Binding ElementName=menu}"/>
        <Menu HorizontalAlignment="Center" VerticalAlignment="Bottom">
            <MenuItem x:Name="anotherMenuItem" Header="Window" Tag="{Binding ElementName=window}" Click="MenuItem_Click"/>
            <MenuItem Header="Grid" Tag="{Binding ElementName=grid}" Click="MenuItem_Click"/>
            <MenuItem Header="Menu" Tag="{Binding ElementName=menu}" Click="MenuItem_Click"/>
            <MenuItem Header="Menu Item" Tag="{Binding ElementName=anotherMenuItem}" Click="MenuItem_Click"/>
        </Menu>
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

除了ContextMenu中包含的绑定之外,所有绑定都很有效.它们在运行时将错误输出到"输出"窗口.

有谁知道任何工作?这里发生了什么?

data-binding wpf contextmenu elementname

66
推荐指数
4
解决办法
3万
查看次数

右键单击以选择Datagridview中的行并显示一个菜单以将其删除

我的DataGridView中有几列,并且我的行中有数据.我在这里看到了一些解决方案,但我无法将它们结合起来!

只需右键单击一行,它就会选择整行,并显示一个菜单,其中包含删除行的选项,当选择该选项时,它将删除该行.

我做了一些尝试,但没有一个工作,它看起来很乱.我该怎么办?

c# select datagridview contextmenu right-click

60
推荐指数
3
解决办法
13万
查看次数

检测哪个选定项(在ListView中)产生了ContextMenu(Android)

我有一个ListView,允许用户长按项目以获取上下文菜单.我遇到的问题是确定ListItem他们长期压迫的问题.我试过这样做:

myListView.setOnCreateContextMenuListener(new OnCreateContextMenuListener() {
  @Override public void onCreateContextMenu(ContextMenu menu, final View v, ContextMenuInfo menuInfo) {
   menu.add("Make Toast")
    .setOnMenuItemClickListener(new OnMenuItemClickListener() {
     @Override public boolean onMenuItemClick(MenuItem item) {
      String toastText = "You clicked position " + ((ListView)v).getSelectedItemPosition();
      Toast.makeText(DisplayScheduleActivity.this, toastText, Toast.LENGTH_SHORT).show();
      return true;
     }
    });
  } 
 });
Run Code Online (Sandbox Code Playgroud)

但它只是挂起,直到ANR弹出.我怀疑创建菜单后ListItem不再选择.

看起来您可以监控点击或长按,然后在那里记录点击的项目:

 mArrivalsList.setOnItemLongClickListener(new OnItemLongClickListener() {
  @Override public boolean onItemLongClick(AdapterView<?> parent, View v, int position, long id) {
   // record position/id/whatever here
   return false;
  }
 });
Run Code Online (Sandbox Code Playgroud)

但这对我来说感觉很重要.有没有人有更好的解决方案呢?

android listview contextmenu

56
推荐指数
2
解决办法
6万
查看次数

WPF - 如果命令的CanExecute为false,如何隐藏菜单项?

默认情况下,菜单项在无法执行命令时会被禁用(CanExecute = false).根据CanExecute方法使菜单项可见/折叠的最简单方法是什么?

谢谢

为方便起见,这里的解决方案是:使用"Boolean to Visibility"转换器将visibility属性绑定到IsEnabled属性.

wpf command contextmenu menuitem

49
推荐指数
4
解决办法
3万
查看次数

隐藏Visual Studio 2010(08)中右键单击上下文菜单中的项目?

源编辑器,项目项和解决方案项的右键单击上下文菜单变得非常漫长,其中两个甚至现在在我的1680x1050屏幕上滚动.

有没有办法让我隐藏这些菜单上的项目,即使我必须向Visual Studio宏系统添加一个事件并手动查找和隐藏它们?

这是一些例子,我从不使用这些物品中的许多物品:

上下文菜单

Edit1:当前答案+评论建议我应该使用工具栏上下文菜单中的Customize菜单项,转到第二个选项卡,Commands,然后使用Context Menus单选按钮并在那里找到相关菜单.

这里有3个,评论建议:

自定义上下文菜单

如你所见,它们都是空的.

编辑2:单击该对话框中的"全部重置"按钮后,对于"解决方案"和"项目"菜单,我在对话框中获得了可以编辑的项目,但更改并未影响项目或解决方案上的实际上下文菜单文件.此外,重新启动Visual Studio后,这两个对话框的内容再次为空.

contextmenu right-click visual-studio-2010

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

仅针对特定文件类型向Windows上下文菜单添加菜单项

我开发了一个应用程序,使用窗口的上下文菜单加载图像(右键单击文件),暂时正在工作,但是reg键是打开的

HKEY_CLASSES_ROOT\*
Run Code Online (Sandbox Code Playgroud)

它适用于所有文件.

我希望上下文菜单中的菜单项只能显示.jpg文件.

我能做到的是什么?我应该使用哪些注册表项?

提前致谢.

registry windows-xp contextmenu

40
推荐指数
2
解决办法
4万
查看次数