【问题标题】:how to create "open in new tab" contextmenustrip in C# webbrowser?如何在 C# webbrowser 中创建“在新选项卡中打开”上下文菜单?
【发布时间】:2013-11-15 03:25:28
【问题描述】:

我正在用 C# 构建一个 Web 浏览器。我想在右键单击时创建自己的上下文菜单条,但我不知道怎么做。你能帮我解决这个“在新标签页中打开”吗?

【问题讨论】:

  • 我们需要更多地了解您当前的应用程序结构以帮助您。例如..您的WebBrowser 控件当前是否驻留在TabControl 中?
  • 是的。我的应用程序是一个多标签浏览器。我的意思是我想知道“在新标签中打开”如何工作并创建我自己的 Contextmenustrip 包括“在新标签中打开”

标签: c#


【解决方案1】:

这真的取决于上下文。

例如,如果您在 Windows 窗体上构建它,您可以捕获鼠标按下事件并检查右键单击,之后您可以运行任何您想要的代码,包括打开“上下文菜单条”

this.browser.MouseDown += new System.Windows.Forms.MouseEventHandler(this.browserpanel_MouseDown);

在 browserpanel_MouseDown 中你可以检查

e.Button == MouseButtons.Right

【讨论】:

  • 谢谢!你可能会误解我的意思。我想创建自己的“在新标签页中打开”,例如在 IE、Chrome、Firefox 中......
  • 如果您使用的是ContextMenuStrip中的构建,您可以添加BrowserContextMenuStrip.Items.Add("open in new tab", null, newTabClickHandler);如果这不是您的意思,您可能需要更详细地解释您已经拥有的内容以及您想要弄清楚的部分。
  • BrowserContextMenuStrip.Items.Add("在新标签页中打开", null, newTabClickHandler);是我的意思,但我不知道newTabClickHandler 必须做什么......对不起,我的英语太糟糕了。
  • 你必须告诉我们更多关于你的结构的信息,就像西蒙已经问过的那样。您如何加载浏览器控件以及您的容器是什么?同时,您还可以检查另一个可能已经在回答您的问题的 stackoverflow 响应。 stackoverflow.com/questions/1286746/…
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-20
  • 2015-03-04
  • 2019-10-27
  • 2016-09-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多