title: Good implementation of weak dictionary in .Net
body: <p>Where can I find good implementation of <code>IDictionary</code> which uses weak references inside?</p>
  
  <p>Dictionary should be holding only weak references to values and eventually clean up itself of dead references.</p>
  
  <p>Or should I just write it myself?</p>