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配置,安装和卸载所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)