Должен быть простой способ выгрузки UserControl с дисплея без использования Visibilty, поскольку в теории он фактически не выгружается.
Какие есть решения?
Вы можете использовать UserControl.Dispose(), как описано здесь: http://msdn.microsoft.com/en-us/library/3cc9y48w.aspx
UserControl.Dispose()