我有一个我的主模块使用的模块。主模块的代码无法访问,因此我无法干预其结构。我在我的模块中添加了一个 ShowNavigationItemController 并将我的模块复制到主模块的 bin 目录中。当我运行主模块时,我得到“在'Sms.Module.Controllers.CustomShowNavigationContollerSettings'和'Xpand.ExpressApp.Security.Controllers.ShowNavigationItemController'控制器中检测到具有重复'ShowNavigationItem'标识符的操作。我该如何解决它和做事?
问问题
227 次
1 回答
0
恐怕您的主模块和 Xpand 模块在当前状态下不能一起存在于同一个项目中。在https://www.devexpress.com/Support/Center/Question/Details/T191034对此行为进行全面审查。
以下是针对您的情况的一些解决方案。
如果您或其他人可以触摸主模块代码:
- 从 Xpand 控制器继承您的 CustomShowNavigationContollerSettings,这意味着使您的主模块 Xpand 依赖。
- 如果可能,更改主模块实现。使用 Frame.GetController < T > () 来处理它的事件,而不是覆盖操作。完成后,您的代码将不再拥有“ShowNavigationItemController 后代座位”。看看如何做到这一点:https ://www.devexpress.com/Support/Center/Question/Details/K18055
如果您无法触摸主模块代码:
- 就放一个吧。删除 Xpand 或您的主模块。
- 稍后您将赶上主模块代码,现在您需要的只是一个变通方法。在这种情况下,您可以禁用主模块控制器或 Xpand 控制器,风险自负。删除单个控制器的一种方法是在模块中创建它的后代,并将后代 TargetViewId 设置为“none”。
于 2015-09-01T00:34:51.427 回答