单击相应按钮时,在单个Web浏览器中显示多个html页面

本文关键字:显示 浏览器 页面 html Web 单个 按钮 单击 | 更新日期: 2023-09-27 18:27:32

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

因此,我在webview.xaml中创建了<phone:webBrowser>,在chapters.xaml 中创建了100个按钮

我想问的是,如果在chapters.xaml中按下button1,那么chapter1.html应该在webview.xaml中打开。如果在chapters.xaml中按下button2,则chapter2.html应在webview.xaml中打开。像这样,通过在chapters.xaml中单击相应的按钮,所有100个文件都应该在webview.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页面给什么?提前感谢。!!!

单击相应按钮时,在单个Web浏览器中显示多个html页面

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

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

然后使用WebBrowser控件的导航方法:

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

当然,您也可以根据Button的Content字符串构造正确的文件名(至少看起来是这样)。那么就不需要设置CCD_ 21。