View:
1.定义一个接口IViewBase
namespace ViewInterface
{
public interface IViewBase
{
event EventHandler Load;
}
}
2.定义一个继承IViewBase的接口
namespace ViewInterface
{
public interface ITestView: IViewBase
{
}
}
Presenter:
1.定义一个名为Presenter<IView>的泛型类作为基类;
namespace Presenter
{
public class Presenter<IView>
{
Public IView View{get;private set;}
public Presenter<IView>(IView view)
{
this.view=view;
}
Protected virtual void OnViewSet()
{
}
}
}
2.定义一个继承于Presenter<IView>的子类;
using ViewInterface;
namespace Presenter
{
public class viewPresenter:Presenter<ITestView>
{
Public viewPresenter(ITestView view):base(view)
{
}
Protected override void OnViewSet()
{
}
}
}
新建一个名为TestView的windows窗体
using ViewInterface;
using Presenter;
namespace View
{
public partial class TestView : Form,ITestView
{
InitializeComponent();
viewPresenter presenter=new presenter(this);
}
}