silverlight 使用WebBrowser控件,浏览器模式下内嵌HTML

本文介绍了如何在Silverlight 5中使用WebBrowser控件在浏览器模式下加载HTML,并详细阐述了实现此功能所需的注册表设置、XAP包签名以及提升信任级别的步骤。通过实例代码展示了按钮点击效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本人经验:

选中截图红圈圈中区域即可。




上述操作无效时,请使用以下引用文章:

        在Silverlight 5 版本中,已经支持浏览器模式(in-browser)模式下使用WebBrowser控件访问网页和在浏览器模式下创建txt文本文件。当然想要获得这个功能有三个条件在注册表内添加一个新的键、设置XAP签名(如果是在本地http://localhost:做测试时可以不需要这两个条件)和提升信任级别。

        第一、在注册表内添加一个新的键AllowElevatedTrustAppsInBrowser

        其名为AllowElevatedTrustAppsInBrowser,DWORD类型,值为1。设置Silverlight允许访问一些本地资源。

•键名: AllowElevatedTrustAppsInBrowser
•键类型: DWORD
•键值: 0x00000000 (disabled) or 0x00000001 (enabled)

        其键注册位置在32位系统和64位系统中不一样的,下面请看:
HKEY_LOCAL_MACHINE\Software\Microsoft\Silverlight\ (for 32-bit)
or
HKEY_LOCAL_MACHINE\Software\Wow6432Node\Microsoft\Silverlight (for 64-bit)

        二、将XAP包签名设置XAP包是可信任的应用程序

        1.右键点击Silverlight项目-->属性-->签名-->点击选中“为Xap文件签名”-->点击“创建测试证书”。如下图所示:

 

        2.安装证书:在上图中点击“更多详细信息”-->“安装证书(I)”。如下图:

        3.在弹出的“证书导入向导”窗口中选中“将所有的证书放入下列存储区”--在弹出的“选中证书存储”窗口中,选择“受信任的根证书颁发机构”。如下图:

        4.安装签名证书成功

        三、提升信任级别

        首先我们设置Silverlight的OOB模式提升信任级别如下:

        在这里我们提升了OOB模式的信任级别,此时项目会自动设置从Silverlight项目启动如左图,我们需要手动设置从Web项目启动,如右图:

     

        最后我们来看本篇文章的实例Demo代码,首先看MainPage.xaml代码如下:

<Grid x:Name= "LayoutRoot" Background= "White" >
     <WebBrowser Height= "463" HorizontalAlignment= "Left"  Margin= "0,137,0,0"
                 Name= "webBrowser1" VerticalAlignment= "Top" Width= "800" />
     <Button Content= "加载百度" Height= "39" HorizontalAlignment= "Left"
             Margin= "25,58,0,0" Name= "button1" VerticalAlignment= "Top"
             Width= "141" Click= "button1_Click" />
     <Button Content= "打开写字本" Height= "39" HorizontalAlignment= "Left"
             Margin= "314,58,0,0" Name= "button2" VerticalAlignment= "Top"
             Width= "141" Click= "button2_Click" />
     <Button Content= "创建文件" Height= "39" HorizontalAlignment= "Left"
             Margin= "626,58,0,0" Name= "button3" VerticalAlignment= "Top"
             Width= "141" Click= "button3_Click" />
</Grid>

        接着我们来看CS代码如下:

      
      
private void button1_Click( object sender, RoutedEventArgs e) { // 访问百度 this .webBrowser1.Source = new Uri( " http://www.baidu.com/ " , UriKind.RelativeOrAbsolute); } private void button2_Click( object sender, RoutedEventArgs e) { // 打开一个记事本文件 dynamic cmd = AutomationFactory.CreateObject( " WScript.Shell " ); cmd.Run( @" c:\windows\notepad.exe " , 1 , true ); } Random _rnd = new Random(); private void button3_Click( object sender, RoutedEventArgs e) { // 创建一个文件存放路径 var tempDirectory = @" c:\temp " ; if ( ! Directory.Exists(tempDirectory)) { Directory.CreateDirectory(tempDirectory); } // 创建文件全名 var filename = string .Format( " tempFile-{0}.txt " , _rnd.Next( 0 , 65536 )); var fullPath = System.IO.Path.Combine(tempDirectory, filename); // 写入一个新的文件 using (FileStream fs = File.Create(fullPath)) using (StreamWriter sr = new StreamWriter(fs, Encoding.UTF8)) { sr.WriteLine( " 这是一个可被信任的XAP文件 " ); } // 通知用户 MessageBox.Show( " 文件已经创建成功 " ); }
复制代码

        最后我们来看点击三个按钮的效果分别如下面三图:

    

作者:程兴亮

出处:http://www.cnblogs.com/chengxingliang/archive/2011/04/28/2030800.html



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值