如何通过单击xamarin形式的按钮来打开网页

don*_*ton 1 c# xamarin.forms

我有一个xamarin格式的文件称为HomePage,它从用户那里获取eURL内容。

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)));
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

并通过单击bButton按钮打开eURL,并将网站加载到另一个名为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();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

该代码无法正常工作

Ada*_*ley 5

好吧,我不确定您打算走哪条路,但是您可以通过以下任一方式打开网页

  1. 在内部使用WebView

  2. 使用Device.OpenUri