可能重复:
How to access NavigateToString property of a WebView in a ListView
我有一个项目列表,它们为每个显示的项目使用DataTemplate。在这个模板中,我有一个从API调用中获取的静态HTML Webview。 DataTemplate类似于以下内容:
<DataTemplate x:Name="DetailedPostTemplate">
<Grid Height="600" Width="600">
<Grid.RowDefinitions>
<RowDefinition Height="2*"/>
<RowDefinition Height="6*"/>
</Grid.RowDefinitions>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="2*"/>
</Grid.ColumnDefinitions>
<StackPanel>
<TextBlock Text="{Binding Score}"/>
<TextBlock Text="Votes" />
</StackPanel>
<Grid Grid.Column="1">
<TextBlock Text="{Binding OwnerName}" />
</Grid>
</Grid>
<!-- HTML Content Row -->
<Grid Grid.Row="1">
<WebView DataContext="{Binding Body}"/> <!-- What do I do HERE? -->
</Grid>
</Grid>
</DataTemplate>
所有我能够找到的,将数据“传递”到Webview是使用NavigateToString
方法,但由于我不知道列表中的项目数量,而且我我使用模板,我不能从C#方面调用它。如何使用XAML模板将此HTML连接到WebView?
答案 0 :(得分:2)
WebView
没有支持此功能的可绑定属性。有许多人编写了附加属性,允许您绑定到WPF和Silverlight WebView
控件,这些控件应该可以在Windows 8中进行一些小的更改。请参阅示例this solution。