internal virtual void AddStrongRef(IntPtr id, object value)
{
// if (id == (IntPtr) WeakRefs.RoutedEventArgs_Source) {
// source = value;
// } else {
if (strongRefs == null)
strongRefs = new Dictionary<IntPtr, object> ();
else if (strongRefs.ContainsKey (id))
return;
if (value != null) {
#if DEBUG_REF
Console.WriteLine ("Adding ref from {0}/{1} to {2}/{3}", GetHashCode(), this, value.GetHashCode(), value);
#endif
strongRefs.Add (id, value);
}
// }
}