protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            // The 'Host' part of the URI for the ms-local-stream protocol is a combination of the package name
            // and an application-defined key, which identifies the specfic resolver.
            // Here, we use 'MyTag'.

            Uri url = WebViewControl.BuildLocalStreamUri("MyTag", "/default.html");

            // The resolver object needs to be passed in to the navigate call.
            WebViewControl.NavigateToLocalStreamUri(url, myResolver);
        }
Example #2
0
 public void NavigateToFile(string url)
 {
     if (string.IsNullOrWhiteSpace(config.ExternalHost))
     {
         var uri = webview.BuildLocalStreamUri("spidereye", url);
         webview.NavigateToLocalStreamUri(uri, streamResolver);
     }
     else
     {
         var uri = UriTools.Combine(config.ExternalHost, url);
         webview.Navigate(uri);
     }
 }
        public void LoadUri(Uri uri)
        {
            if (uri == null)
            {
                throw new ArgumentNullException(nameof(uri));
            }

            if (uri.IsAbsoluteUri)
            {
                webview.Navigate(uri);
            }
            else
            {
                var localUri = webview.BuildLocalStreamUri("spidereye", uri.ToString());
                webview.NavigateToLocalStreamUri(localUri, EdgeUriToStreamResolver.Instance);
            }
        }
        internal void NavigateToLocalStreamUri(Uri relativePath, IUriToStreamResolver streamResolver)
        {
            if (relativePath == null)
            {
                throw new ArgumentNullException(nameof(relativePath));
            }

            if (relativePath.IsAbsoluteUri)
            {
                throw new ArgumentOutOfRangeException(nameof(relativePath), DesignerUI.E_WEBVIEW_INVALID_URI);
            }

            if (streamResolver == null)
            {
                throw new ArgumentNullException(nameof(streamResolver));
            }

            Windows.Web.IUriToStreamResolver AsWindowsRuntimeUriToStreamResolver(IUriToStreamResolver streamResolverInterop)
            {
                // Check to see if the stream resolver is actually a wrapper of a WinRT stream resolver
                if (streamResolverInterop is Windows.Web.IUriToStreamResolver streamResolverAdapter)
                {
                    return(streamResolverAdapter);
                }

                if (streamResolverInterop is GenericUriToStreamResolver genericAdapter)
                {
                    return(genericAdapter);
                }

                // We have an unwrapped stream resolver
                return(new GenericUriToStreamResolver(streamResolver));
            }

            var uri = BuildStream(LocalContentIdentifier, UriHelper.UriToString(relativePath));

            _webViewControl?.NavigateToLocalStreamUri(uri, AsWindowsRuntimeUriToStreamResolver(streamResolver));
        }
Example #5
0
 internal void NavigateToLocalStreamUri(Uri source, IUriToStreamResolver streamResolver)
 {
     _webViewControl?.NavigateToLocalStreamUri(source, streamResolver);
 }