This turns out to be a known bug in the VS WinForms designer; see
Problem with inherits form. It affects only properties which are directly backed by the Visible property of components. The solution is to use a variable to hold the intended state of the visibility attribute, manipulate it instead, and set the appropriate control’s Visible property when needed:
private bool _pt1Visible = true;
[Browsable(true), Category("Appearance"), DefaultValue(true)]
public bool Pt1Visible
{
get { return _pt1Visible; }
set
{
_pt1Visible = value;
PotentialLabel1.Visible = _pt1Visible;
}
}
Thank you
BonnieB!