Как создать поле Rich Text с или без веб-просмотра в формах xamarin? - PullRequest
0 голосов
/ 07 января 2019

Я хочу создать поле Rich Text с или без веб-представления в формах xamarin. Я пробовал много примеров, но ничего из этого не помогло мне. Примеры:

https://github.com/XAM-Consulting/TEditor

Проблема с этим примером была в том, что он слишком медленный для меня, и он вообще не редактировал мой текст. И это было крушение много раз. Поэтому я попытался последовать этому примеру

https://forums.xamarin.com/discussion/95318/rich-text-box-in-xamarin-forms

но код Adam.Else дал мне много ошибок, и он не работал. Я сообщил об ошибке в stackoverflow. Как вы видите эту ссылку ниже -

Необработанное исключение: Xamarin.Forms.Xaml.XamlParseException: позиция 12:21. Статический ресурс не найден для ключа FromRTFConverter произошел

Я не знаю, как решить эту проблему. Есть предложения?

1 Ответ

0 голосов
/ 08 января 2019

Я сделал это, используя веб-просмотр . Сначала я скачал текстовое поле Rich, которое было создано с использованием HTML / CSS и JavaScript. Это ссылка для расширенного текстового поля, которое я собираюсь использовать в качестве веб-представления в моем приложении для форм xamarin.

MainPage.xaml

<StackLayout>
        <!-- Place new controls here -->

        <WebView x:Name="MyWebView"  VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" />
    </StackLayout>

MainPage.xaml.cs

 public partial class MainPage : ContentPage
    {
        public MainPage()
        {
            InitializeComponent();
            MyWebView.Source = new HtmlWebViewSource();
            MyWebView.Source = DependencyService.Get<IBaseUrl>().Get();
        }
    }

Я создал интерфейс под названием IBaseUrl . Это мой код

public interface IBaseUrl { string Get(); }

И я создал класс в Native с именем BaseUrl_Android для вызова файла Html, который я поместил в папку «Ресурсы» в Android. Это мой код для BaseUrl_Android

[assembly: Dependency(typeof(BaseUrl_Android))]
namespace webviewdemo.Droid
{
    public class BaseUrl_Android : IBaseUrl
    {
        public string Get()
        {
            return "file:///android_asset/fontawesome5.html";
        }
    }
}

Добавьте файл HTML и JavaScript в папку активов. Если у вас есть какие-либо сомнения по поводу добавления и использования html-файла в формах xamarin, обратитесь к по этой ссылке . Это все, что вам нужно сделать, чтобы получить отличное текстовое поле в формах Xamarin .

Это скриншот моего текстового поля

...