我需要一个从ContextBoundObject
拦截继承的表单,能够使用某些方法。问题是 C# 中不允许多重继承。
public partial class FrmListItems : Form, ContextBoundObject
{
}
有谁有想法吗?
您始终可以创建一个继承 aContextBoundObject
并实现所有所需行为的“模型”类,而不是使用数据绑定来填充表单上的 UI 元素以在屏幕上显示所有必要的数据。您可以查看各种模式,例如 MVx 模式(MVP、MVC、MVVM),以清楚地将您的业务逻辑与 UI 分开。
即使 C# 具有多重继承,我也会建议避免这种继承,因为这违反了这些类之间的“IS A”关系。
您始终应该更深入地考虑您的设计,以降低维护成本。放入一类 UI 和业务逻辑总是会导致难以维护和发展的晦涩代码。
例如,我很难理解您将如何测试您的解决方案。使用单独的类也大大简化了可测试性。