The code looks fine for to me. Are you saying that errorProvider.GetError() does not return "Required field" when some fields are empty? I can't see you outputting the value anywhere?
Try the documentation http://msdn.microsoft.com/en-us/library/system.windows.forms.errorprovider.aspx#Y3115
Also you may want to change ErrorProvider1.SetError(c, "") to ErrorProvider1.SetError(c, String.Empty)
The code looks fine for to me. Are you saying that errorProvider.GetError() does not return "Required field" when some fields are empty? I can't see you outputting the value anywhere?
Try the documentation http://msdn.microsoft.com/en-us/library/system.windows.forms.errorprovider.aspx#Y3115
Also you may want to change ErrorProvider1.SetError(c, "") to ErrorProvider1.SetError(c, String.Empty)