- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个工具条,其中包含一个 ToolStripComboBox 和一个 ToolStripButton。我想向它们添加一个 ContextMenuStrip,但我无法直接访问工具条或其其他内容,因此无法设置工具条的上下文菜单。
为 ToolStripComboBox 设置 ContextMenuStrip 很简单:
myToolStripComboBox.ComboBox.ContextMenuStrip = myContextMenu;
但是 ToolStripButton 没有明显的等效项。如何将 ContextMenuStrip 添加到 ToolStripButton?
最佳答案
杰夫·耶茨的建议应该可行。
但是,另一种选择是创建您自己的派生类(MyToolSTripButton、MyToolStripTextBox ...等),为这些项目提供一个您可以在设计时设置的 ContextMenuStrip 属性,并让您的派生类检测鼠标右键按下,或者其他什么其他事件将触发上下文菜单的显示。
这会减轻仅那些感兴趣的项目所需的任何知识。
下面是一个使用 ToolStripTextBox 作为项目的示例。
public class MyTextBox : ToolStripTextBox
{
ContextMenuStrip _contextMenuStrip;
public ContextMenuStrip ContextMenuStrip
{
get { return _contextMenuStrip; }
set { _contextMenuStrip = value; }
}
protected override void OnMouseDown(MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)
{
if (_contextMenuStrip !=null)
_contextMenuStrip.Show(Parent.PointToScreen(e.Location));
}
}
}
关于c# - 如何将 ContextMenuStrip 添加到 ToolStripButton?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/283417/
我能够在 Windows 窗体外成功显示 ContextMenuScript (CMS)。 我可以使用鼠标指针选择/单击项目。 但是,当表单未获得焦点时,它不喜欢键盘控制(向上/向下箭头、转义)。 如
我有一个带有ContextMenuStrip的DataGridView。ContextMenuStrip 的默认行为是自动关闭 - 即在用户与其交互时立即关闭。我已关闭此功能以允许多个用户交互(这就是
我有一个包含很多项目的 ContextMenuStrip。 如何处理鼠标滚轮来滚动项目? 我在网上搜索,但没有找到有用的东西。 或者如何从上下文菜单中获取第一个/最后一个显示/可见的项目? 最佳答案
我正在尝试为我的应用程序创建一个专门的工具栏,它由几个按钮组成,单击这些按钮时应在它们上方显示一个 ContextMenuStrip 并提供一些选择。看来我无法将此菜单绘制在正确的位置。 下面是重现问
当我更改 ToolStripLabel 的文本时在我的上下文菜单中,当我更改菜单项的文本时,上下文菜单不会像预期的那样自动调整大小。 然后看起来像这样: 如何正确调整上下文菜单的大小? 我可以更改真实
如何根据值设置和获取上下文菜单条中项目的文本和/或背景的颜色值? 这段代码是正确的吗? ContextMenuStrip1.Items.Add("this is an item").BackColor
我正在尝试制作一个带有通知图标的 contextMenuStrip,但我无法将此上下文的位置放在鼠标位置上方。它显示在相同的位置鼠标 Context menu strip position Image
我从 ContextMenuStip 得到一些不稳定的行为: private void lstModules_MouseMove(object sender , MouseEventArgs e)
我目前正在开发 Windows 触摸应用程序。一些 winForm 代码仍然存在。如您所见,滚动/箭头按钮的高度对于触摸按钮来说确实太小了。有没有办法将高度增加到 35/40 像素? 以下链接是一个V
是否可以在选择/检查某些项目后让 ContextMenuStrip 保持打开状态? 我计划使用一个简单的 ContextMenuStrip 来设置过滤器(这样我就可以在菜单中或作为右键单击选项使用相同
我正在创建大量自定义控件并将它们添加到 FlowLayoutPanel。还有一个在设计时创建和填充的 ContextMenuStrip。 每次将控件添加到面板时,都会将其 ContextMenuStr
我有一个分配给几个不同列表框的 ContextMenuStrip。我试图弄清楚什么时候 ContextMenuStrip 被点击,它被用在什么 ListBox 上。我尝试了下面的代码作为开始,但它不起
我有一个 ContextMenuStrip,它显示可以由用户命名的项目;允许用户指定包含与符号的项目名称。当显示 ContextMenuStrip 时,项目将 & 符号视为转义序列,并在下一个字符下划
tl/dr:我第二次调用 ContextMenuStrip.Show 时,它不显示。 我正在构建一个在后台运行但在用户点击特定热键时在鼠标光标上显示下拉菜单的应用程序。 如果应用程序具有焦点,则这在
当我右键单击 ListView 列标题时,我显示了一个不同的 ContextMenuStrip,在 ListView 中显示了另一个。 class ListViewExx : ListView {
我有一个 ContextMenuStrip,我想在设计器中为其 ToolStripMenuItems 分配事件处理程序。如果我选择编辑项目集合,我可以编辑我添加的 ToolStripMenuItems
我正在寻找一种在 VB.net 中实现 TreeView 的好方法,其 contextMenuStrip 是基于表单中不同对象的状态而变化的。 具体来说,在下面的“TreeView”中,当对象 sta
当我在 datgridview 中右键单击一行时,我正在尝试创建一个显示上下文菜单的事件。 这是正在发生的问题的图片: 这是我目前使用的代码: Private Sub dgvStudents_Cell
我已经为我的 NotifyIcon(在系统托盘中)创建了 ContextMenuStrip。但是,ContextMenuStrip 的方向总是在左边。我注意到在许多其他应用程序(如 Skype)上,它
我确信这个问题的答案之前已经发布过。请原谅我,我想我只是没有想到正确的搜索字符串。 我拥有的是分配给拨号器托盘图标的上下文菜单条。这个想法是让用户设置各种号码并从菜单中选择用户定义的号码并启动拨号。
我是一名优秀的程序员,十分优秀!