c# - 如何以编程方式滚动 UWP WebView?

标签 c# windows webview win-universal-app

我正在使用 WebView 制作一个简单的 UWP(通用 Windows 10 应用程序)网络应用程序。 如何单击按钮返回页面顶部? 我在 MSDN 上找不到它。

最佳答案

您可以使用 window.scrollTo(0,0) 方法,它是一种将文档滚动到水平位置“0”和垂直位置“0”的 JavaScript 方法。

您可以与 WebView 的内容进行互动通过使用 InvokeScriptAsync调用脚本或将脚本注入(inject) WebView 内容的方法。

例如:

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
    <WebView x:Name="theWebView" Source="https://msdn.microsoft.com/en-us/library/windows.ui.xaml.controls.webview.aspx">
    </WebView>
    <Button Content="To The Top" Click="Button_Click"></Button>
</Grid>

代码隐藏:

private string ScrollToTopString = @"window.scrollTo(0,0);";

private async void Button_Click(object sender, RoutedEventArgs e)
{
    await theWebView.InvokeScriptAsync("eval", new string[] { ScrollToTopString });
}

关于c# - 如何以编程方式滚动 UWP WebView?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36500747/

相关文章:

java - 如何在 WebView 中自动填充表单字段?

c# - 我如何告诉编译器忽略堆栈跟踪中的方法?

c# - 通过练习、问题和谜题学习 C#

windows - imageMagick 的内存问题?

c++ - 搜索硬盘中所有文件的最快方法是什么?

Android WebView err_unknown_url_scheme

java - 使用 JavaFX 的 WebView NullPointerException

c# - 是否可以从递归生成的类继承?

c# - XmlSerializer 忽略 Web Api 中的 [Xml 属性]

c++ - 我们如何知道自从我们按下计算机上的电源按钮以来已经过去了多长时间?