Silverlight实例教程 - Out of Browser配置,安装和卸载

Silverlight实例教程 - Out of Browser配置,安装和卸载,第1张

概述本篇将介绍Silverlight的Out of Browser在实例开发前的基础设置以及一些开发技巧。   在创建Silverlight项目时,默认是不支持Out of Browser模式的,所以在使用Silverilght的Out of Browser前,需要对Silverlight项目进行设置,使其支持OOB项目安装和运行。在以下演示中,将创建一个演示例程,该例程将在后续教程中使用,由于该教程 本篇将介绍Silverlight的Out of browser在实例开发前的基础设置以及一些开发技巧。   在创建Silverlight项目时,默认是不支持Out of browser模式的,所以在使用Silverilght的Out of browser前,需要对Silverlight项目进行设置,使其支持OOB项目安装和运行。在以下演示中,将创建一个演示例程,该例程将在后续教程中使用,由于该教程不属于Silverilght基础开发教程,所以这里,我不在细述如何创建Silverlight项目, 项目名称: SilverilghtOOBDemo 项目环境:VS2010 + Silverlight 4

Silverlight的Out of browser应用设置 在Silverlight项目中,设置项目支持Out of browser模式非常简单,首先右键选中SilverlightOOBDemo客户端项目,选择“PropertIEs”属性

在项目属性栏,默认情况下已经选择了Silverlight标签,而在右边内容页面中,"Enable running application out of the browser"是没有被选中的,我们仅需要选中该选项,保存,即可设置当前Silverlight项目支持Out of browser。

在"Enable running application out of the browser"选项下,可以看到一个Out-of-browser Settings...按钮,点击进行该按钮,即可对Out-of-browser进行设置:

从上图可以看出,开发人员可以通过这些属性,创建个性的Out of browser应用。以上设置属性是保存在Visual Studio 2010中的OutOfbrowserSettings.xml文件中的,开发人员也可以通过修改该文件来设置OOB应用属性。

  1  < OutOfbrowserSettings  Shortname ="SilverlightOOBDemo Application"  EnableGPUacceleration ="False"  ShowInstallMenuItem ="True" >
2     OutOfbrowserSettings.Blurb SilverlightOOBDemo Application on your desktop; at home, at work or on the go. </ 3  OutOfbrowserSettings.windowsettings 4       windowsettings  Title   /> 5  6  OutOfbrowserSettings.Icons  7  OutOfbrowserSettings > 在完成以上设置后,点击确定和保存,该项目即可支持Out of browser模式。 Silverlight的Out of browser应用安装 Silverlight Out of browser应用的安装很简单,作为开发人员我们可以通过两种方式提供给用户安装OOB应用到本地。 第一种方式是使用默认的右键菜单按钮安装应用到本地。

这种方式是Out of browser默认的安装方式,但是该方式的弊端是不易与用户体验,每次用户要右键点击应用才能安装应用。作为专业Out of browser应用,通常会使用第二种方式安装OOB应用到本地。 第二种方式,添加控件通过Application.Current.Install()事件安装应用到本地。 在当前应用的MainPage下,添加安装按钮,通过按钮点击事件安装应用到本地。

GrID  x:name ="LayoutRoot"  Background ="Dimgray"          button  ="btInstall"  Content ="安装应用到本地"  WIDth ="200"  Height ="50"  Click ="btInstall_Click" GrID  1  private voID  btInstall_Click( object  sender, RoutedEventArgs e)
 2          {
 3               try  
 4              { 
 5                  Application.Current.Install(); 
 6              }
 7  catch  (InvalIDOperationException ex) 
 8   9                  MessageBox.Show( " 应用已经安装. " ); 
10  11   (Exception ex) 
12  13  应用不能被安装,错误信息如下: +  Environment.Newline   ex.Message); 
14              } 
15          } 通过上面简单代码也可以达到安装OOB应用到本地的效果。 对于较为专业的Out of browser应用的安装,我们经常会添加一些代码对当前应用安装进行简单的判断,判断该应用是否已经被安装到了本地,如果已经安装,将忽略不再进行安装步骤。这是对OOB应用的一种保护措施。我们简单修改项目代码, public  MainPage()
            InitializeComponent();
if  (Application.Current.IsRunningOutOfbrowser)
            {
                btInstall.Visibility  =  Visibility.Collapsed;
                lbStatus.Text    我正在Out of browser下运行 ;
else  Visibility.Visible;
我正在浏览器中运行 16   (Application.Current.InstallState  !=  InstallState.Installed)
17  18                  btInstall.IsEnabled  true 19  20  21  22  23  false 24                  btInstall.Content  应用已经安装到本地 25  26  27  安装本地前:

安装本地后:

重复安装时:

对于安装时所处于的状态控制,我们可以通过InstallState进行判断。我们可以通过添加以下代码:  Current_InstallStateChanged(
switch  (Application.Current.InstallState)
                 case  InstallState.Installing:
                    btInstall.IsEnabled                      btInstall.Content  正在安装...                      break  InstallState.Installed:
已经安装                     MessageBox.Show( OOB应用已经安装到本地 );
 InstallState.notinstalled:
点击安装该应用到本地  InstallState.InstallFailed:
OOB应用安装失败 当安装时,用户可以看到提示:

以上是Silverlight Out of browser安装方法和一些控制技巧。 Silverlight的Out of browser应用卸载 Silverlight的OOB应用卸载同样很简单,Silverlight没有和安装时候的Install API,所以我们无法通过代码的方式控制卸载,但是可以通过以下两种方式卸载应用: 1. 右键点击应用,选择卸载应用选项;

2. 通过windows“控制面板",选择对应应用进行卸载,这个是传统型卸载方法,这里不再赘述. 简单实例 在这个简单实例中,我将在当前的OOB应用中添加一个简单的网络监测代码,演示该应用在线和离线时的网络状态。在该应用,我们仍旧会使用System.windows.Application API来判断应用是否离线安装,而我们还会使用System.Net.networkinformation API来判断其网络状态。简单修改代码如下:    1  < UserControl  x:Class ="SilverlightOOBDemo.MainPage"
 2      xmlns ="http://schemas.microsoft.com/winfx/2006/xaml/presentation"  3      xmlns:x ="http://schemas.microsoft.com/winfx/2006/xaml"  4      xmlns:d ="http://schemas.microsoft.com/Expression/blend/2008"  5      xmlns:mc ="http://schemas.openxmlformats.org/markup-compatibility/2006"  6      mc:Ignorable ="d"  7      d:DesignHeight ="300"  d:DesignWIDth ="400" >  8   9       GrID  x:name ="LayoutRoot"  Background ="Dimgray" 10           StackPanel  OrIEntation ="Vertical" 11               button  ="btInstall"  Content ="安装应用到本地"  WIDth ="200"  Height ="50"  Click ="btInstall_Click" /> 12  TextBlock  ="lbStatus"  Foreground ="White"  HorizontalAlignment ="Center"  FontSize ="18" 13  ="lbNetworkStatus" ="lightGreen" 14  </ StackPanel 15  GrID 16  UserControl 17        private   voID  CheckNetworkStatus()
 2          {
 3  if  (NetworkInterface.GetIsNetworkAvailable())
 4              {
 5                  lbNetworkStatus.Foreground  = new  SolIDcolorBrush(color.FromArgb( 255 , 90 240 ));
 6                  lbNetworkStatus.Text    " 当前网络处于连接状态 " ;
 7              }
else  SolIDcolorBrush(colors.Red);
当前网络处于断线状态         }
 NetworkChange_NetworkAddressChanged( object             CheckNetworkStatus();
18          }     修改构造函数代码:   public  MainPage()
            InitializeComponent();
 (Application.Current.IsRunningOutOfbrowser)
                btInstall.Visibility   Visibility.Collapsed;
                lbStatus.Text  我正在Out of browser下运行  Visibility.Visible;
我正在浏览器中运行  (Application.Current.InstallState  !=  InstallState.Installed)
                btInstall.IsEnabled  true 19  20  21  22  23  false 24                  btInstall.Content  应用已经安装到本地 25  26  27  28  29              Application.Current.InstallStateChanged  +=  Current_InstallStateChanged;
30              NetworkChange.NetworkAddressChanged   NetworkAddressChangedEventHandler(NetworkChange_NetworkAddressChanged);
31  32          }     运行后可以在离线状态下,查看网络应用状态:

 

本文主要讲述Silverlight的Out of browser应用设置,安装和卸载,属于Silverlight实例开发前的基础,下一篇我将继续介绍Silverlight的Out of browser应用开发基础。 总结

以上是内存溢出为你收集整理的Silverlight实例教程 - Out of Browser配置,安装和卸载全部内容,希望文章能够帮你解决Silverlight实例教程 - Out of Browser配置,安装和卸载所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1015229.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存