0

我有 100 个 html 文件。我知道如何初始化<phone:webBrowser />单个 xaml 页面。但是,如果我使用这种方法,那么我需要通过在其中初始化 webbrowser 来创建 100 个 xaml 页面,并且我可以通过单击按钮来导航该 xaml 页面。但是,这是浪费时间。

所以,我创建<phone:webBrowser>webview.xaml100 个按钮chapters.xaml

我要问的是,如果button1按下chapters.xamlchapter1.html应该在webview.xaml. 如果button2按进去chapters.xamlchapter2.html应该是打开的webview.xaml。像这样,所有 100 个文件都应该webview.xaml通过相应的按钮单击打开chapters.xaml。如何打开?

我的chapters.xaml页面:

<Button Content="Chapter 1" Click="webview"/>
<Button Content="Chapter 2" Click="webview"/>
/.../
<Button Content="Chapter 100" Click="webview"/>

我的chapters.cs页面:

private void webview(object sender, RoutedEventArgs e)
{
     NavigationService.Navigate(new Uri("/webview.xaml", UriKind.Relative));
}

我的webview.xaml页面:

<phone:WebBrowser x:Name="browser" IsScriptEnabled="True" Margin="-12,0,-11,0" />

我没有在webview.cs页面中给出什么,帮我在cs页面中给出什么来打开html页面?提前致谢。!!!

4

1 回答 1

1

您可以通过设置其Tag属性为每个 Button 附加适当的 HTML 文件名:

<Button Content="Chapter 42" Tag="chapter42.html" Click="webview"/>

然后使用 WebBrowser 控件的Navigate方法:

private void webview(object sender, RoutedEventArgs e)
{
    var button = (Button)sender;
    var htmlFile = (string)button.Tag;
    browser.Navigate(new Uri(htmlFile, UriKind.Relative));
}

当然,您也可以从ContentButton 的字符串构造正确的文件名(至少看起来像)。那么就不需要设置了Tag

于 2013-08-14T08:50:01.773 回答