2014-04-02 34 views
1

我有一個集線器控制HubSection內的WebView:的WebView內HubSection不會呈現

<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代碼,我用普通的 「<HTML> <體>你好< /身體> </HTML >」 測試。

+0

難道一個'Hub'之外相同的代碼工作的? –

+0

是的,WebView正確地管理着呈現HTML代碼的集線器之外。 – metaphori

+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> 
+0

:你能解釋多一點。我不知道使用擴展名。我將WebViewExtension.cs的內容複製到我的項目中的一個文件中,並且添加了「xmlns:ns =」using:mylib「 xmlns:ext =」using:WSLibrary.Extensions「。在此行中收到錯誤

+0

您的WebViewExtension類是否在名稱空間WSLibrary.Extensions?(這是基本的C#編程...另外請注意,xmlns:ns =「using:mylib」是毫無意義的。) – metaphori

+0

:謝謝。我是c#的新手。我認爲這是問題所在 –

-1

將HubSection的HorizontalContentAlignmentVerticalContentAlignment設置爲Stretch

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