当我在C#中将ToolTip
对象拖放到我的表单上时,表单上的每个控件都会获得一个名为ToolTip
的新属性,该属性之前不存在。我正在尝试创建类似ToolTip
的内容,以便当我将其拖放到我的表单上时,所有控件都会自动获取其新属性。
如果有人能给我一个定义,我也会感激不尽,这样我就可以编辑我的问题来更好地传达我的意图和意义。
答案 0 :(得分:6)
您要找的是“Extender Provider”。很简单,您实际上并没有将新属性添加到控件的网格中。您改为实现VS设计器所寻找的接口,该接口告诉VS如何将网格中的属性集“转换”为对Extender Provider的调用以真正做到这一点。
除了ToolTips之外,像TableLayoutPanel和FlowLayoutPanel这样的LayoutPanel也做类似的事情,以及某些其他“元窗口组件”。
答案 1 :(得分:4)
ToolTip
是Extender Provider。实现它的完整文档是here,其中包含完整示例here。
ToolTip可能会像这样实现:
[ProvideProperty("ToolTip", typeof(IComponent))]
class ToolTip : IExtenderProvider {...}