ToolStripControlHost提供了将第三方控件嵌入ToolStrip的能力. 我们可以用两种方式使用它: 一, 我们可以直接将继承自Control类的第三方控件作为ToolStripControlHost的构造函数的参数构造一个ToolStripControlHost实例, 将这个实例直接作为 (monthCalendar)); } 二, 从ToolStripControlHost派生, 在继承类默认参构造函数中将第三方控件作为参数调用基类的有参构造函数. 实现步骤如下: 1, 扩展 ToolStripControlHost。实现一个调用传入所需控件的基类构造函数的默认构造函数。 如何提供设计时的支持 1, 为从ToolStripControlHost继承的类添加ToolStripItemDesignerAvailabilityAttribute标签.
原理是利用ToolStripControlHost可以承载自定义控件的这一能力,让下拉式控件ToolStripDropDown将任何自定义控件像右键菜单那样弹出来(别忘了右键菜单ContextMenuStrip 但一番尝试之后放弃,它的菜单项MenuItem不像ToolStripItem那样可以通过ToolStripControlHost承载自定义控件,希望是我能力有限,总之我做不到把自定义控件弄到ContextMenu
&& _resizable; } 87 set { resizable = value; } 88 } 89 90 private ToolStripControlHost DoubleBuffered = true; 159 ResizeRedraw = true; 160 host = new ToolStripControlHost