The Font property is an ambient property. An ambient property is a control property that, if not set, is retrieved from the parent control. For example, a Button will have the same BackColor as its parent Form by default. For more information about ambient properties, see the AmbientProperties class or the Control class overview.
Because the Font is immutable (meaning that you cannot adjust any of its properties), you can only assign the Font property a new Font. However, you can base the new font on the existing font.
vb#c#
The following is an example of how to adjust the existing font to make it bold:
myControl.Font = new Font(myControl.Font,
myControl.Font.Style | FontStyle.Bold);
MyControl.Font = New Font(MyControl.Font, _
MyControl.Font.Style Or FontStyle.Bold)
Notes to Inheritors: When overriding the Font property in a derived class, use the base class's Font property to extend the base implementation. Otherwise, you must provide all the implementation. You are not required to override both the get and set accessors of the Font property; you can override only one if needed.