首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在UWP项目中使用AddWebAllowedObject()函数?

在UWP项目中,可以使用AddWebAllowedObject()函数来允许JavaScript代码访问UWP应用程序的本地对象。该函数用于将本地对象添加到应用程序的Web视图中,以便在JavaScript中调用本地对象的方法或访问其属性。

AddWebAllowedObject()函数的使用步骤如下:

  1. 在UWP项目的XAML页面中,添加一个WebView控件,用于显示Web内容。
  2. 在代码中,通过获取WebView的Settings属性,获取到WebViewSettings对象。
  3. 使用WebViewSettings对象的AddWebAllowedObject()方法,将本地对象添加到WebView中。该方法接受两个参数,第一个参数是本地对象的名称,第二个参数是本地对象的实例。

以下是一个示例代码:

代码语言:txt
复制
// 在XAML页面中添加一个WebView控件
<WebView x:Name="MyWebView" />

// 在代码中添加本地对象
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Navigation;

namespace MyApp
{
    public sealed partial class MainPage : Page
    {
        public MainPage()
        {
            this.InitializeComponent();
        }

        protected override void OnNavigatedTo(NavigationEventArgs e)
        {
            base.OnNavigatedTo(e);

            // 获取WebView的Settings对象
            var webViewSettings = MyWebView.Settings;

            // 添加本地对象到WebView
            webViewSettings.AddWebAllowedObject("MyObject", new MyObject());
        }
    }

    // 本地对象的定义
    public sealed class MyObject
    {
        public void MyMethod()
        {
            // 在这里编写本地对象的方法逻辑
        }
    }
}

在上述示例中,我们在MainPage的OnNavigatedTo()方法中获取了WebView的Settings对象,并使用AddWebAllowedObject()方法将名为"MyObject"的本地对象添加到WebView中。然后,我们可以在JavaScript代码中使用"MyObject"来调用本地对象的方法。

需要注意的是,为了确保安全性,应该仅允许受信任的本地对象通过AddWebAllowedObject()函数添加到WebView中,并且仅在需要与JavaScript进行交互的情况下使用该函数。

推荐的腾讯云相关产品:腾讯云云服务器(https://cloud.tencent.com/product/cvm)

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

WPF 使用 Microsoft.Toolkit.Wpf.UI.Controls 的 InkCanvas 时加上背景色和按钮方法

本文来告诉大家如何在 WPF 应用 HOST 了 UWP 的 InkCanvas 控件时,给 InkCanvas 控件设置背景色,加上按钮等业务功能的实现方法 在上一篇博客有告诉大家如何在 WPF 里面使用上...的项目,其中一个是 UWP 的空白应用项目,另一个是 UWP 的控件项目。...让 UWP 的空白应用项目作为 UWP 执行入口,用于提供运行的支持。...让 UWP 的控件项目作为实际的 UWP 自定义控件编写的项目,咱将在 UWP 的控件项目里面完成所有的自定义逻辑 如何创建项目和如何组织,还请参阅 官方文档 本文这里就不多说了 回到如何给 UWP 的...InkCanvas 控件添加背景色的方法上,在新建的 UWP 控件项目里面,添加一个自定义的控件, CustomInkControl.xaml 控件 在这个控件里面的 XAML 添加如下代码 <UserControl

2.2K20

dotnet 从入门到放弃的 500 篇文章合集

ToString C# ValueTuple 原理 C# 不能用于文件名的字符 C# 判断两条直线距离 C# 判断系统版本 C# 动态加载卸载 DLL C# 复制列表 C# 如何写 DEBUG 输出 C# 如何在项目引用...WPF 对比 UWP 开发,需要知道的1000个问题 Visual studio C# 代码使用 NotNull visual Studio 无法调试,提示程序跟踪已退出 visual-studio-...Magick.NET 播放 gif 图片 WPF 如何在 WriteableBitmap 写文字 WPF 如何在应用程序调试启动 WPF 如何在绑定失败异常 WPF 如何画出1像素的线 WPF 如何调试...DirectComposition 产品经理——做一个自己的系统 从以前的项目格式迁移到 VS2017 新项目格式 代码段 使用 ahk 让普通键盘变为Dvorak键盘 使用 IncrediBuild...如何使用 Q# 如何使用 Telegram 如何使用本模板搭建博客 如何入门 C++ AMP 教程 如何写毕业论文 表格 如何删除错误提交的 git 大文件 如何在 UWP 使用 wpf 的 Trigger

10.4K20
  • WindowsXamlHost:在 WPF 中使用 UWP 的控件(Windows Community Toolkit)

    以前可以在 WPF 中使用有限的 UWP 控件,而现在有了 WindowsXamlHost,则可以使用更多 UWP 原生控件了。...建议直接在 项目的 NuGet 管理器搜索并安装。 ? ?...配置 WPF 项目能访问 UWP 的类型 因为我们即将开始使用UWP 的控件类型,所以需要配置项目能够访问到 Windows Runtime 的类型。 ?...因为我们不是原生的 UWP,而是 Host 在 WPF UWP 控件,所以会没有 Application。这在 UWP 控件初始化内部已经 catch 了,所以你可以忽略。...阅读以下文章了解更多: WindowsXamlHost:在 WPF 中使用 UWP 控件库的控件 - walterlv ---- 参考资料 WindowsXAMLHost control - Windows

    4.7K20

    win10 uwp 通过 win2d 画出笔迹 界面笔迹性能原理完全控制墨迹多指输入转换笔迹无限漫游

    本文告诉大家如何在 UWP 上让 win2d 画出笔迹,通过实际测试发现在 UWP 的笔迹的性能比在 WPF 高很多。...本文的代码不可以用在实际项目上,因为假设用户都是正常书写 在 UWP 的笔迹有设置对笔迹完全控制,在中文翻译,会将 Ink 翻译为墨迹,本文将 Ink 翻译为笔迹或墨迹。...因为使用 win2d 需要通过 Nuget 安装,这部分请看在项目安装win2d 本文就直接使用 先引用命名空间 xmlns:canvas="using:Microsoft.Graphics.Canvas.UI.Xaml...尝试写一个空白的 UWP 程序,在里面添加笔迹控件,在移动的过程,进入断点,这时你还可以继续在 UWP 应用上画。...将笔迹转为静态就可以让笔迹变为一个界面元素,参与界面的变化,选择和层级这些业务。

    1K20

    win10 uwp 捕获后台线程异常

    本文告诉大家如何在 UWP 捕获全局的后台线程异常,在出现后台线程异常时,将会让 UWP 程序闪退,但是在退出之前还是可以执行自己的代码 在 UWP ,如果需要捕获前台线程,也就是 UI 线程的异常...,可以参见 UWP 的全局异常处理 的方法 在 App 的构造函数添加 UnhandledException 事件,在事件方法里面通过参数 UnhandledExceptionEventArgs 可以设置当前这个异常是否被处理...,设置为 true 那么就是被处理的异常,此时的应用不会闪退 public App() { this.InitializeComponent()...Windows.UI.Xaml.UnhandledExceptionEventArgs e) { e.Handled = true;// 设置为 true 那么表示这个异常被处理,应用不会闪退 } 如果是后台线程异常,需要使用...通过这个方法可以在软件退出前做日志记录 Application.UnhandledException Event (Windows.UI.Xaml) UWP 的全局异常处理

    60910

    win10 uwp 关联文件

    如果是作为测试,想看这个功能是如何使用,就只需要写文件类型。 现在我的应用可以打开 jpg 文件,在一个 jpg 文件右击打开方式,在这个项目部署之后就可以设置是使用这个项目打开。...在实际的项目我也有一个应用是需要这个功能,这个就是 UWP图床: https://www.microsoft.com/store/apps/9nblggh562r2 这个软件可以快速将图片上传到图床,图床可以使用默认的也可以自己设置...添加完,打开 App.xaml.cs 添加一个函数,通过 OnFileActivated 调用就是用户使用这个应用打开关联文件,打开的文件可以从 FileActivatedEventArgs 找到...uwp MVVM入门。...现在尝试运行一下这个项目,然后找到一张 jpg 图片,右击打开方式选择这个项目,这时就可以看到 UWP 应用显示图片。

    66220

    加强版在国内分发 UWP 应用正确方式 通过win32安装UWP应用

    本文告诉大家如何使用传统的方法,将 UWP 作为 win32 应用安装包方法分发给用户安装 将 UWP 作为安装包的方式分发也就是通过旁加载的方式,而微软干的不错的时使用旁加载如果使用的证书不清真,那么就要求用户信任证书...右击项目,选择发布,使用旁加载方式发布,请看 Packaging UWP apps 此时建议勾选上自动更新的选项,这样才能做到自动更新。...如何做自动更新请看 如何在国内发布 UWP 应用 和 win10 uwp 发布旁加载自动更新 用这两个方法可以做到旁加载的应用可以自动更新,要求 17134 最低版本 此时可以看到发布的文件夹,这里的...win32 的方法安装,请看 aL3891/AppxInstaller: Tools for installing Uwp apps outside the windows store 但是这个项目现在...tool - UWP apps Create an app package with the MakeAppx.exe tool - MSIX 如何在国内发布 UWP 应用 WindowsStoreAppUtils

    1K10

    win10 uwp 笔迹书写预测 墨迹书写加速

    UWP 的 InkCanvas 里自带了预测书写轨迹的功能,开启此功能可以进行书写预测,从而减少书写延迟。...本文将告诉大家如何在 UWP 的 InkCanvas 里开启笔迹书写预测功 在 UWP 的 InkCanvas 里开启笔迹书写预测功能只需要设置 InkModelerAttributes 的 PredictionTime...印象在 10240 的文档里面,是有一个使用 Inertia 惯性预测算法的笔迹书写预测的,但是我现在还没找到文档 设置 InkModelerAttributes 的 PredictionTime 属性需要先获取到...InkDrawingAttributes 对象,因为 InkModelerAttributes 是 InkDrawingAttributes 里的一个属性 演示的项目如下,先在 MainPage.xaml...Grid> 以上代码在界面里存放一个 InkCanvas 元素 接着在构造函数使用以下代码设置笔迹书写预测

    81220

    如何组织一个同时面向 UWPWPF.Net Core 控制台的 C# 项目解决方案

    阅读本文将了解到如何在尽可能复用代码的情况下组织这样的 C# 解决方案。...需要在 Visual Studio 安装界面额外勾选: 用于安装通用 Windows 项目,如果你对此不感兴趣,忽略即可 ? 用于安装 WPF 应用,如果你对此不感兴趣,忽略即可 ?...用于安装 .NET Core 项目,这是跨平台的重点,建议安装 ? 在 Visual Studio 创建一个解决方案的时候依次添加这五种项目。....NET Core 控制台项目仅仅作为入口,引用 .NET Standard 的项目,将用户输入的命令转为具体的函数调用。...UWP 和 WPF 项目仅包含 UI(XAML)和必要的不一致的 UI 控制逻辑,通过链接的方式将共享项目中的代码引入如何链接?。

    1.5K10

    WindowsXamlHost:在 WPF 中使用 UWP 控件库的控件

    在 WindowsXamlHost:在 WPF 中使用 UWP 的控件(Windows Community Toolkit) 一文,我们说到了在 WPF 引入简单的 UWP 控件以及相关的注意事项...不过,通常更有实际价值的是更复杂的 UWP 控件的引入,通常是一整个 Page。 本文将介绍如何在 WPF 项目中引用 UWP 的控件库。...创建一个 UWP 控件库 建议专门为你复杂的 UWP 控件创建一个 UWP 控件库。在这个控件库的开发就像普通 UWP 应用一样。...image.png ▲ 添加项目依赖 现在,编译 WPF 项目的时候,会将 UWP 项目编译后的源码也一起编译到 WPF 项目中;相当于间接使用UWP 的控件库。...在 WPF 项目使用 UWP 控件库的控件 这时,在 WindowsXamlHost 中就可以添加 UWP 控件库的 MainPage 了。

    5.9K20

    win10 uwp 使用 Microsoft.Graph 发送邮件 注册应用创建 UWP 程序安装 nuget 包添加访问权限发送邮件

    经过了一天的测试终于成功使用发送邮件 本文告诉大家如何在 UWP 调用 Microsoft.Graph 发送邮件 在仔细阅读了Microsoft Graph 桌面应用程序 - 陈希章的文章之后,按照文章的方法尝试了很久终于成功发送了邮件...可以使用 Microsoft.Graph 调用 Office 365 的几乎所有功能,但是我只有成功使用邮件的功能,暂时就先告诉大家如何在 UWP 使用 Microsoft.Graph 发送邮件 之后的其他功能等我跑通了...VisualStudio 创建一个 UWP 项目,尽可能选择新版本,只有在自己跑通了之后才使用小的版本,防止因为版本问题在尝试开发的时候做到放弃 我创建了一个 BalreMahouVoomawbatu...项目,最低版本是 17134 也就是现在最新的 ?...在 Load 事件的函数添加自己的代码,首先使用 DelegateAuthenticationProvider 拿到访问的权限,在 Microsoft.Graph 的所有访问都需要先获得 OAuth 的权限

    1.7K30

    如何将GridViewEX升级到UWP(Universal Windows Platform)平台

    引言 上一篇文章,我们主要讲解了如何在保证GridView控件的用户体验基础上,扩展GridView生成GridViewEx控件,增加动态添加新分组功能等,本文在上文的基础上,介绍如何在Windows10...使用GridViewEx,开发UWP应用。...Demo 下载: GridViewLiveTiles.zip GridViewEx.zip  GridViewDemo.zip 开发UWP应用程序 开发UWP应用程序最好是从创建empty项目开始,重用已开发的一些模块...UWP平台提供了其他的解决方法AdaptiveTriggers,内置了自适应布局。因此创建UWP应用程序,首先需要删除所有ApplicationViewStates的代码。...但是在UWP应用,非常灵活,桌面应用可以在标题栏添加返回按钮,在移动设备不仅能使用标题栏的返回键,也可以使用物理返回键实现导航功能。UWP的方法比较通用,且不需要编写自定义的Xaml文件。

    2.8K80

    从零开始学习 dotnet 编译过程和 Roslyn 源码分析

    csproj 写死常量啦) - 吕毅 Roslyn 在项目文件使用条件判断 - 林德熙 在了解到 csproj 文件结构之后,你可以通过迁移一些项目,并确保他们编译通过来练习: 将 WPF、UWP...复制文件 - 林德熙 如何使用 MSBuild Target(Exec)的控制台输出 - 吕毅 如何在 MSBuild Target(Exec)中报告编译错误和编译警告 - 吕毅 更高级的 Target...: .NET/C# 你可以在代码写多个 Main 函数,然后按需要随时切换 - 吕毅 在 Visual Studio 的解决方案资源管理器隐藏一些文件 - 吕毅 使用链接共享 Visual Studio...的代码文件 - 吕毅 为 Visual Studio 使用通配符批量添加项目文件 - 吕毅 Roslyn 使用 Directory.Build.props 管理多个项目配置 - 林德熙 Roslyn...基础 项目文件的已知 NuGet 属性(使用这些属性,创建 NuGet 包就可以不需要 nuspec 文件啦) - 吕毅 可以使用 NuGet 做一些不是传统 dll 引用的功能: Roslyn 通过

    32740

    win10 uwp 反射

    可以使用反射动态地创建类型的实例,将类型绑定到现有对象,或从现有对象获取类型 应用程序需要在运行时从某个特定的程序集中载入一个特定的类型,以便实现某个任务时可以用到反射 反射主要应用与类库...反射可以获得安全类型的类,internal或其他不是public的访问的类或类的字段,都可以获得。...uwp 程序集所有类 在使用反射之前需要打开Default.rd.xml添加下面代码,就可以反射这个项目代码 <Directives xmlns="http://schemas.microsoft.com...C# 反射私有构造方法创建,下面来告诉大家如何写 首先需要获得构造<em>函数</em>,如果构造<em>函数</em>不是 public 那么就需要<em>使用</em>下面代码获得 获得方法 获得类型方法 MethodInfo[] listMethodInfo...ref 和 out 的<em>函数</em> 如果反射存在 out 参数的<em>函数</em>,那么需要<em>使用</em> parameters 方法来调用。

    1.2K20

    win10 uwp 使用 AppCenter 自动构建

    做到开发的构建和快速测试,产品的遥测分发合并到一个网站 本文以 UWP 图床为例告诉大家如何在 AppCenter 上部署自动构建。...首先打开 https://appcenter.ms/ 使用微软的账号或 github 账号登陆 ?...点击 add new 添加一个 UWP 程序,需要写出 app 的命名和选择是哪个平台 没想到这个 AppCenter 默认选的是 IOS 差评,需要自己点击一个 Windows 然后点击 UWP 才可以...因为 UWP 图床是放在 github 所以这里选择 github 在弹出的页面选择 UWP 项目 ? 点击选择之后可以看到当前的分支,这里选择 master 分支 ? 然后点击配置编译 ?...本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。

    1.2K10

    win10 uwp 线程池 为什么需要线程池什么是线程池线程池原理应用等待代码完成定时器

    何在 UWP 使用线程池,本文就是来告诉大家这些 为什么需要线程池 在程序,创建和销毁线程是需要很多资源的,如果只是为了完成很小的代码而创建一个新的线程,创建线程占用的时间在总的运行时间占有比例很大...在 C# ,线程池只是预先分配了一些线程,线程没事做就休息,有工作需要就随便叫一个线程出来。通过这个方法减少创建线程的时间。...因为做这个线程池需要很多代码,判断设备运行多少个线程合适,分配空闲线程等。好像微软已经弄好了,大家只需要用。...千万不要使用线程池执行比较紧急的任务,因为可能等待很多时间都没运行。 在 UWP 可以通过 ThreadPool 使用线程池。...CreatePeriodicTimer ,这个函数可以延迟大于指定的时间执行代码 ThreadPoolTimer.CreatePeriodicTimer(timer =>

    1.2K10
    领券