Esempio n. 1
0
        public HomeViewModel(IOpenBrowserService openBrowserService = null)
        {
            _openBrowserService = openBrowserService ?? Locator.Current.GetService <IOpenBrowserService>();

            var isValidWebsiteAddress = this.WhenAny(x => x.WebsiteAddress, x =>
            {
                Uri result;
                return(Uri.TryCreate(WebsiteAddress, UriKind.Absolute, out result));
            });

            OpenWebPage = ReactiveCommand.CreateAsyncTask(isValidWebsiteAddress,
                                                          async _ => { await _openBrowserService.OpenDefaultBrowser(new Uri(WebsiteAddress)); });

            OpenWebPage.ThrownExceptions.Subscribe(
                ex =>
            {
                UserError.Throw("Does this device have a web browser installed?", ex);
            });
        }
Esempio n. 2
0
        public HomeViewModel(IOpenBrowserService openBrowserService = null)
        {
            _openBrowserService = openBrowserService ?? Locator.Current.GetService<IOpenBrowserService>();

            var isValidWebsiteAddress = this.WhenAny(x => x.WebsiteAddress, x =>
            {
                Uri result;
                return Uri.TryCreate(WebsiteAddress, UriKind.Absolute, out result);
            });

            OpenWebPage = ReactiveCommand.CreateAsyncTask(isValidWebsiteAddress,
                async _ => { await _openBrowserService.OpenDefaultBrowser(new Uri(WebsiteAddress)); });

            OpenWebPage.ThrownExceptions.Subscribe(
                ex =>
                {
                    UserError.Throw("Does this device have a web browser installed?", ex);
                });
        }