Xamarin HtmlWebViewSource не привязан - PullRequest
1 голос
/ 03 августа 2020

Эта привязка показывает мне мои html:

<Label Grid.Row="1" Text="{Binding theInstructions}" />

, поэтому я думаю, что у меня есть право привязки.

И этот WebView отображает Google:

<WebView Grid.Row="1" Source="http://www.google.com" />

, поэтому WebView сам работает на моей ContentPage.

Но этот WebView с привязкой ничего не отображает, независимо от того, насколько просто я делаю html:

<WebView 
    Grid.Row="1" HorizontalOptions="Fill" VerticalOptions="EndAndExpand">
    <WebView.Source>
        <HtmlWebViewSource Html="{Binding theInstructions}" />
    </WebView.Source>
</WebView>

Что мне здесь не хватает?

РЕДАКТИРОВАТЬ РЕДАКТИРОВАТЬ РЕДАКТИРОВАТЬ

Лео в основном здесь, так что престиж. Это не проблема привязки, это проблема макета.

Следующий код отображает HTML:

<WebView Grid.Row="1">
        <WebView.Source>
            <HtmlWebViewSource Html="{Binding theInstructions}" />
        </WebView.Source>
    </WebView>

Но ТОЛЬКО если HTML достаточно короткое. Сделайте его на одну строку длиннее, и он исчезнет.

И я пробовал десятки комбинаций StackLayouts, ScrollView, HeightRequests, MinHeightRequests и так далее. Все остальное, что я делаю, убирает HTML go - даже короткие, а тем более длинные.

Я ошеломлен, что Xamarin все еще так плох после столь долгого ...

Итак ... это все еще открытый вопрос. По-видимому, связанные веб-представления имеют проблему ???

1 Ответ

0 голосов
/ 03 августа 2020

Может потребоваться установить свойства WidthRequest и HeightRequest для WebView для просмотра содержимого HTML, в зависимости от макета, дочерним элементом которого является WebView. Например, это требуется в StackLayout .

Поэтому попробуйте изменить, например:

<StackLayout>
   <WebView WidthRequest="1000" HeightRequest="1000">
       <WebView.Source>
           <HtmlWebViewSource Html="{Binding theInstructions}" />
       </WebView.Source>
   </WebView>
</StackLayout>
...