void Initialize()
{
subscription = controls.Subscribe(c =>
{
if (shouldLoad == null || shouldLoad(c.View))
Load(c.View);
if (shouldStop != null && shouldStop(c.View))
{
Stop();
Close();
}
});
Closed += (s, e) => Dispose();
}