【问题标题】:How to create a ToolStripMenuItem with several controls on it?如何创建一个带有多个控件的 ToolStripMenuItem?
【发布时间】:2012-12-26 04:47:14
【问题描述】:

比如一个Label和一个TextBox。

我试过了:

class MyClass : ToolStripPanel
{
      //...
}

等等。但后来:

contextMenuStrip1.Items.Add(new MyClass());

显示错误:

...无效的参数。

【问题讨论】:

  • 没有。这不是“完全不正确”。它超载了。
  • 您可以直接将 ToolStripPanel 控件添加到您的 ContextMenuStrip,然后将控件添加到 ToolStripPanel - 这是您想要做的吗?实际上不需要直接从 ToolStripPanel 类继承。
  • @dash This: contextMenuStrip1.Items.Add(new ToolStripPanel()); 以同样的方式失败。
  • 对不起,我的错误 - 我已经有一段时间没有这样做了。你可以使用 ToolStripControlHost 类 - 如果你愿意,我可以给你一个例子?

标签: c# .net winforms


【解决方案1】:

您可以使用ToolStripControlHost 类在 ContextMenuStrip 上托管任何 Windows 窗体控件(或者实际上是任何 Strip 控件)

例如,以下代码将为上下文菜单条添加标签:

    Label newlabel = new Label();
    newlabel.Text = "Hello World";
    newlabel.Width = 300;
    ToolStripControlHost tsHost = new ToolStripControlHost(newlabel);

    contextMenuStrip1.Items.Add(tsHost);

【讨论】:

  • 谢谢。​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​​
猜你喜欢
  • 2010-09-16
  • 1970-01-01
  • 2018-01-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多