title: How can I change the text of an existing ToolTip control, in a PictureBox in my WinForm application?
body: <p>I have a winform application which has a dynamic number (based on a database value) of <code>PictureBoxes</code>. Each P-Box has a <code>Tooltip</code> control.</p>
  
  <p>How can I change the ToolTip Text without having any memory leaks? Right now, I've got the following code, but it's leaking memory => the previous ToolTip controls are not getting GC'd.</p>
  
  <p>BTW, this is a background thread that is trying to update the main UI thread....</p>
  
  <pre><code>if (pictureBox == null || !pictureBox.IsHandleCreated) {
      continue;
  }
  
  Action setTooltipAndImage = () =&gt; {
      var toolTip = new ToolTip();
      GameServer tempGameFile = gameServer;
      toolTip.SetToolTip(pictureBox, string.Format(...));
      pictureBox.Image = Resources.RedButton;
  };
  
  if (pictureBox.InvokeRequired) {                        
      pictureBox.Invoke(setTooltipAndImage);
  } else {
      setTooltipAndImage();
  }
  </code></pre>
  
  <p>As I said - this works but it's leaking.</p>
  
  <p>Anyone have any suggestions?</p>