Native fullscreen preview
You can expand a preview to a full-screen size with a PreviewFullScreen method with setting a screen index as a parameter that indicates what display to use for the full-sized preview (if you have several displays). For example, for the main display you should call:
myPreview.PreviewFullScreen("", 1, 0);
The enumeration of screens comes from EnumDisplayMonitors system function. To check whether a preview is full-screen you can call the PreviewIsFullScreen method:
myPreview.PreviewIsFullScreen("", ref isFullScreen, ref screenIndex);
The method returns you whether the preview object is set for full-screen mode, and if it does (isFullScreen = 1) the screenIndex indicates an index of a display.
Custom approach
When you use the native way, the SDK creates a new window (e.g. "MPlatform Window") that is visible in a taskbar. To avoid this, or when you work with WPF preview, you should customize a fullscreen preview approach.
For this, you should create in your project a new borderless window. You should set the window to be maximized and not visible on a taskbar.
Then, you should create a new MPreview (MFPreview) object in a source code of the window and load a source object to it.
MPlatform SDK
For MPlatform SDK it might look like
MPreviewClass preview;
public void SetControlledObject(object source)
{
preview = new MPreviewClass();
preview.PreviewEnable("", 1, 1);
preview.PreviewWindowSet("", this.Handle.ToInt64());
preview.ObjectStart(source);
}
And you should create the "fullscreen" form and set a controlled object with the code like the following example running from your main form:
fullscreen = new FullScreenForm();
fullscreen.SetControlledObject(m_objFile);
fullscreen.Show();
MFormats SDK
But for MFormats SDK where you control frames independently, you should set a controlled frame for the "fullscreen" form. It means that from your main thread where you grab and process frames you should send the frame to the fullscreen form.
For MFormats SDK, you should create a new MFPreviewClass and configure a preview on FormLoad event, and create a public method to process the controlled frame:
public void UpdateFrame(MFFrame frame)
{
((IMFReceiver)fullScreenPreview).ReceiverFramePut(frame, -1, "");
}