I have some user controls in a windows form. I wonder
if i set the Font
property of the main form, will its child get a) a copy of the new Font
, or b) a reference to the new Font
, or c) nothing?
Does a font need to be disposed? For example, can I do the following code safely?
form.Font = new Font(...);
Will a font get disposed automatically when the parent (Form
or UserControl
) is disposed?
Thanks,
Gilbert
Both. The Font property is its own .NET object. Winforms however caches the native Windows font, they are fairly expensive to create. The .NET wrapper object is quite small.
Yes. The code is fine, the Font property setter already disposes the previously assigned font.
Yes, it is disposed by the UserControl. Which in turn is automatically disposed by its parent.