I have a winform user control. In the constructor I instantiate a dependency. It goes like
public IProvider provider {get;set;}
public MyUserControl()
{
InitializeComponent();
provider = new MockProvider();//for testing. Will pass into constructor eventually
}
private void MyUserControl_Load(object sender, EventArgs e)
{
SomeModel model = new SomeModel(provider);//provider is null
//do work
model.InsertIntoDb();
}
I thought member state persisted until you explicitly call Form.Close()
. So why is the provider object null in the Load event?