This is by design. Switching to the export tab does not make the Smart Client go into playback mode. You switch to playback mode and then into the export tab.
The Smart Client View and Window Tool plugin sample, the Workspaces tab, shows how you can switch to the export workspace by code.
I imagine that you could do a background plugin in the Smart Client that could detect the workspace switch and then enforce a switch to playback mode. Be aware that this is changing the fundamentals about how the Smart Clients work away from the original designed behavior. It has to my knowledge never been tried.
We are in playback mode before changing to the Exports tab.
Plugin get EnvironmentManager.Instance.Mode is in Mode.ClientPlayback and also WindowInformation.Mode is in Mode.ClientPlayback, but ImageViewerControl is still In live mode does not enter into playback mode
We are using WinForms ImageViewerControl not WPF platformclient:ImageViewerWpfControl.
I fail to understand what you are implementing. To my knowledge you cannot add anything to the Export workspace tab. Maybe you are not doing that but something else. Could you please describe what you are implementing that includes this ImageViewerControl? Please include information about what the underlying SC UI class is.
I can reproduce. I can even reproduce using the Video Preview plugin sample in the Smart Client. Having a reproduction is a good first step in solving it.
I will report this to Milestone Development and keep you informed..
Milestone Development have made a fix. The fix will need to undergo some testing before being included in a patch. I will let you know when it will be generally available.
Working with the fix, we found that the fix did not work, fortunately we found that there is an easy fix if you modify your code. The developer found:
I have looked at and debugged the sample provided provided in the forum post.
The root cause of the problem is in the plugin in the TestWrkExportViewItemUserControl class. Here a image viewer control is created in the its constructor like this
it takes ‘this.WindowInformation’ as parameter and at this point it will always be null. this.WindowInformation is not available until Init() is called so the construction of the image viewer control should be moved to init().