HubSection内的WebView不呈现页面

时间:2014-04-02 08:11:30

标签: webview windows-store-apps windows-8.1

我在Hub控件的HubSection中有一个WebView:

<HubSection x:Name="details_section" ...>
    <!-- ... -->
    <DataTemplate>    
         <WebView x:Name="webView" VerticalAlignment="Stretch" Margin="0" Height="300"  />
    </DataTemplate>
</HubSection>

问题在于,当我导航到HTML字符串时,它不会呈现内容。

// I adjusted and simplified the code
WebView wv = elem.FindName("webView") as WebView;
if (wv != null) {
    wv.NavigateToString(detailTemplate);
}

当然我调试了以查看该方法实际被调用。此外,还会调用LoadCompleted事件。

问题不是由于HTML代码错误,因为我使用普通&#34;&lt; html&gt;&lt; body&gt; hello&lt; / body&gt;&lt; / html&gt;&#34;进行了测试。

2 个答案:

答案 0 :(得分:0)

我使用以下扩展程序解决了这个问题:https://github.com/timheuer/callisto/blob/master/src/Callisto/Extensions/WebViewExtension.cs

使用:

<ns:MyPage
xmlns:ns="using:mylib" 
xmlns:ext="using:WSLibrary.Extensions" ...>
   <!-- ... -->
   <HubSection x:Name="details_section" ...>
      <!-- ... -->
      <DataTemplate>    
          <WebView ext:WebViewExtensions.HtmlSource="{Binding MyHtmlString}" ... />
     </DataTemplate>
   </HubSection>
   <!-- ... -->
</ns:MyPage>

答案 1 :(得分:-1)

将HubSection的HorizontalContentAlignmentVerticalContentAlignment设置为Stretch

<HubSection x:Name="details_section"
     HorizontalContentAlignment="Stretch"
     VerticalContentAlignment="Stretch">