This messed me up a bit… I have a view that has a property called CompanyName
public interface ICaptureCompanyDetailsView
{
string CompanyName { get; }
When my presenter was actually getting the company it was not getting stored as what I intended, because I had not implemented the “CompanyName” property on my actual view.
How did this compile?… It turns out that System.Windows.Forms.Control has a property called CompanyName. Hmm…

The temporary solution… “C# Shadow Field”! (Notice the new keyword)
public new string CompanyName
{
get { return uxCompanyNameTextBox.Text; }
}