Hi Josh,
I am not sure how to delay the instantiation in terms of seconds, but I do know how to delay the instantiation and trigger it off some other action occurring.
For example, register your view like this (possibly without a condition):
viewManager.ViewsByRegionName["InteractionsBundleRegion"].Add(
new ViewActivator()
{
ViewType = typeof(IMyCustomControlView),
ViewName = "MyCustomControlView",
ActivateView = true,
DynamicOnly = true
});Then, after the action occurs that you want to drive displaying your view, do the following:
// pay attention to hierarchy here again, BundleView is an immediate child of region MainBundleRegion
IBundleView bundleView = (IBundleView)viewManager.GetViewInRegion(this, "MainBundleRegion", "BundleView");
viewManager.InstantiateDynamicViewInRegion(bundleView, "InteractionsBundleRegion", "MyCustomControlView", "some id", this.Context);
This will allow you to dynamically show your view based on some logic occurring. In your case you might want to examine what command chains are run when the user dials a preview record, and insert a custom command that actually displays the view (2nd block of code).
Regards,
Andrew