views:

42

answers:

2

Hello,

Quick question, do controls in .NET have handles (hWnd) if they are set to invisible?

Marlon

+2  A: 

If a .Net Control already had a handle then setting it to Visible=false will not remove it. It is possible though to see a .Net Control without a handle. Handles are created on demand in WinForms and it's possible to see the lack of a handle before an operation has forced it into existence.

JaredPar
+1  A: 

The handle is created when the Visible property becomes true. If it was set to true in the form constructor, the most common case for controls, that will happen when the form is created, right before the Load event. Setting Visible to false again doesn't destroy the handle.

Hans Passant
Thank you, so if I set it to invisible on the designer it shouldn't generate a handle.I'm thinking of making a custom control and I want to minimize the number of handles it has.
Marlon