Как загрузить страницу HTML с содержимым JavaScript в WebView Xamarin.Forms?

Я новичок в платформе xamarin и C# форм. Я делаю простое приложение для веб-просмотра. и моя главная страница

namespace jsinjection
{
    public class WebviewPage : ContentPage
    {

        public WebviewPage ()
        {
            Content = new WebView {

                Source = "https://www.google.com.tr/",
                HeightRequest = 1000,
                WidthRequest = 1000
            };
        }
    }
}

Я хочу сделать javascript-инъекцию в это веб-представление в соответствии с данными конкретной платформы. Но я не знаю, как получить это веб-представление за пределами своего класса. И какую часть проекта мне делать инъекцией.

2 ответа

Посмотрите, можете ли вы использовать следующий код:

WebView wv = new WebView();
wv.EvaluateJavascript ("document.body.innerHTML");

или же

wv.InvokeScriptAsync("eval", new string[] { "document.body.innerHTML" });

Смотрите также: Xamarin: Как получить HTML со страницы в WebView?

Посмотрите на Xamarin.Forms.HtmlWebViewSource

И вот пример:

// Get html content of your page.. 
// It could contain javascript code or references to files in the assets (example bellow).
string htmlText = MyItem.Article.ToString();

var browser = new WebView ();
var html = new HtmlWebViewSource {
  Html = htmlText
};

// Set your HTML content to implemented WebView
browser.Source = html;

Или используя Xamarin.Forms.UrlWebViewSource

// Just use local URL for your HTML file that stores inside your application content.
browser.Source = new UrlWebViewSource {Url = "Content/index.html"};
Другие вопросы по тегам