donkripton
donkripton

Reputation: 59

How to Open a web page with the click of a button in xamarin form

i have a file in xamarin form called HomePage that take the eURL content from the user.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;

namespace zaposta_angelar
{
    public class HomePage : ContentPage
    {
        Label lTitle;
        Entry eURL;
        Button bButton;

        public HomePage()
        {
            lTitle = new Label
            {
                Text = "WELCOME",
                HorizontalOptions = LayoutOptions.Center,
                FontAttributes = Font.SystemFontOfSize(25, FontAttributes.Bold).FontAttributes,
                 FontSize = Font.SystemFontOfSize(25, FontAttributes.Bold).FontSize,
                //WidthRequest = 200,
                HeightRequest = 100
            };

            eURL = new Entry { Placeholder = "Enter Site URL", };

            bButton = new Button { Text = "ENTER", };
            bButton.Clicked += bButton_Clicked;

            this.Content = new StackLayout
            {
                Children = {
                    lTitle, eURL, bButton
                }
            };
        }

        void bButton_Clicked(object sender, EventArgs e)
        {
            if (String.IsNullOrEmpty(eURL.Text)) { DisplayAlert("URL", "Your URL is Empty", "OK"); }
            else
            {
                SitePage.LoadRequest(new SitePage(eURL)));
            }
        }
    }
}

and opens eURL from the click of the button bButton and loads the website into into another page called SitePage

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

using Xamarin.Forms;

namespace zaposta_angelar
{
    public class SitePage : NavigationPage
    {
        private Entry eURL;

        public SitePage()
        {

        }

        public SitePage(Entry eURL)
        {
            // TODO: Complete member initialization
            this.eURL = eURL;
        }

        internal static void LoadRequest(SitePage sitePage)
        {
            throw new NotImplementedException();
        }
    }
}

the code doesn't work, any way out

Upvotes: 1

Views: 2985

Answers (1)

Adam
Adam

Reputation: 16199

Well I am not sure which way you intend to go but you can open a webpage by either

  1. Internally using a WebView

  2. Using Device.OpenUri

Upvotes: 5

Related Questions