У меня есть базовый класс форм окон, который содержит две кнопки: Ok и Cancel.Эта базовая форма реализует интерфейс IBaseForm
:
public interface IBaseForm
{
string FormText {get;set;}
DialogResult ShowView(IWin32Window owner);
}
public partial class BaseForm : IBaseForm
{
...
}
Далее у меня есть класс окна, который наследуется от BaseForm
и реализует другой интерфейс IItem
:
public interface IItem : IBaseForm // here is problem
{
string ItemName {get; set;}
...
}
public partial class AddItemForm : BaseForm, IItem
{
...
// I don't have to implement IItem here, because it is implement in BaseForm
}
Проблемас наследованием IBaseForm
;Я должен унаследовать это два раза.В коде у меня есть:
IItem view = new AddItemForm();
view.FormText = "Add new item";
Если я удалю наследование от IItem
, view.FormText
не будет виден.Если я уберу наследство с BaseForm
, мне придется реализовать IBaseForm
в каждом AddItemForm
.Я показал только одну itemForm, но это много, и мне приходится много раз это реализовывать.
Как мне решить эту проблему?