title: C# WinForms transparent click-through control to paint on
body: <p>I am using a custom TreeView class because i need drag-and-drop capabilities. I am painting lines over treeview in order to show the user where will the dragged item go. This creates a lot of visible flicker because each time a change in the "drop target" happens, i have to re-draw the treeview (to clean whatever was drawn before)</p>
  
  <p>Unfortunately there is no DoubleBuffered option for TreeView.</p>
  
  <p>So, i thought about this solution: An invisible control that can paint on itself, located over the treeview, but passing all the mouse events through and not receiving focus. I could paint on that control, and thus prevent the flicker.</p>
  
  <p>However, i have absolutely no clue on how to do it. I know i can set panel color to transparent, but that wont make it become click-though...</p>
  
  <p>PS: I ended up going the easy way out, that is - redrawing over what i've drawn before with white color, and then drawing new selection indicator with black, without invalidating the control. This removed the flicker. However, since StackOverflow forces you to select an answer, i'll select the one i feel is most appropriate... probably...</p>