如何在控件的设计时得到窗体设计器中的所有控件
近日开发了一些自定义控件,其中一个需要自定义一下设计时属性浏览器中的属性编辑器,因此从UITypeEditor中派生了一个类,我需要从窗体上遍历到所有TextBox显示到我自定义的属性编辑器中。
具体可以在 override 的 EditValue方法中实现:
1 public override object EditValue(System.ComponentModel.ITypeDescriptorContext context, IServiceProvider provider, object value)
2 {
3 IContainer ic = context.Container;
4 foreach (IComponent cp in ic.Components)
5 {
6 if (cp is TextBox)
7 {
8 //执行其他操作
9 }
10 }
11 }
2 {
3 IContainer ic = context.Container;
4 foreach (IComponent cp in ic.Components)
5 {
6 if (cp is TextBox)
7 {
8 //执行其他操作
9 }
10 }
11 }
理解的越多,需要记忆的就越少
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步