我正在使用 Winforms 将旧的 VB6 项目移植到 C#。原始版本使用 DataDynamic 的 ActiveBar 套件来同时管理对工具栏、菜单和快捷功能区中的多个项目的更改。所有旧代码都必须更改在多个菜单、工具栏和上下文菜单之间共享的项目的文本,即更改“工具”对象的“标题”属性。
我觉得 .NET必须有某种方式ToolStripItem
在各种容器之间共享 s,但它看起来不像。我错过了什么吗?
目前,我已经从各种想法开始了好几次,从Clone
在对象上实现扩展方法到ToolStripMenuItem
让我的表单跟踪每个可共享的。当我意识到更新本地副本不会更新其他副本时,那失败了(我必须添加复杂的更新事件,这比手动打开和关闭每个项目要多工作)。我已经考虑创建一些基于其标签更新所有项目的方法。这似乎也很不可行。
在类似的情况下,你们都使用了哪些技术?