private static DetailView SynchronizeCurrentObject(this DetailView detailView, object o, ListView listView, DashboardViewItem dashboardViewItem, NestedFrame frame)
        {
            var objectTypeLink = detailView.GetObjectTypeLink(o, listView);

            if (objectTypeLink != null)
            {
                detailView = objectTypeLink.CreateDetailView(detailView, dashboardViewItem, frame);
            }

            if (detailView.ObjectSpace == null)
            {
                dashboardViewItem.Frame.SetView(null);
                detailView = (DetailView)frame.Application.NewView(detailView.Model);
                dashboardViewItem.Frame.SetView(detailView);
            }
            detailView.CurrentObject = detailView.ObjectSpace.GetObject(o);
            return(detailView);
        }