WebViewControlNewWindowRequestedEventArgs.NewWindow Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Provides a new WebViewControl
as the target for a window.open
script call from inside the requesting WebViewControl
. The content in target webview is always considered cross-origin to the content in opener webview and vice versa and subject to cross-origin restrictions. The WebViewControl
provided in the NewWindow
property must be new, running on the same process as the opener webview and cannot have been navigated. Setting the NewWindow
property takes priority over the Handled
property. If NewWindow
is set, then the provided WebViewControl
is used. If NewWindow
is not set, then Handled
is checked to determine behavior for the new window request.
public:
property IWebViewControl ^ NewWindow { IWebViewControl ^ get(); void set(IWebViewControl ^ value); };
IWebViewControl NewWindow();
void NewWindow(IWebViewControl value);
public IWebViewControl NewWindow { get; set; }
var iWebViewControl = webViewControlNewWindowRequestedEventArgs.newWindow;
webViewControlNewWindowRequestedEventArgs.newWindow = iWebViewControl;
Public Property NewWindow As IWebViewControl
Property Value
Windows requirements
Device family |
Windows 10, version 1809 (introduced in 10.0.17763.0)
|
API contract |
Windows.Foundation.UniversalApiContract (introduced in v7.0)
|
Examples
The following C# sample demonstrates window.open being allowed to create a new WebViewControl that is returned to opener:
WebViewControlProcess wvProc;
WebViewControl webView;
void OnWebViewControlNewWindowRequested(WebViewControl sender, WebViewControlNewWindowRequestedEventArgs args)
{
if (args.Uri.Domain == “mydomain.com”)
{
using deferral = args.GetDeferral();
args.NewWindow = await wvProc.CreateWebViewControlAsync(
parentWindow, targetWebViewBounds);
deferral.Complete();
}
else
{
// Prevent WebView from launching in the default browser.
args.Handled = true;
}
}
String htmlContent = “<html><script>window.open(‘http://mydomain.com’)</script><body></body></html>”;
webView.NavigateToString(htmlContent);