1 WPF浏览器应用程序
WPF应用程序既可以作为独立应用程序运行在客户端,也可以依附在Internet浏览器(IE6、IE7等)上执行,后一种程序称为WPF浏览器应用程序,本节将介绍WPF浏览器应用程序的开发流程。
1.1 创建WPF浏览器应用程序
在Visual Studio 2008中,要创建一个WPF浏览器应用程序非常简单,只需根据创建向导执行即可,大致过程如下:
(1)进入Visual Studio 2008开发环境,通过选择"文件"→"新建"→"项目"命令,打开"新建项目"对话框。
(2)在"新建项目"对话框中选择"WPF浏览器应用程序"模板,该模板位于"其他语言"→"C#"→"Windows"分类下。
(3)选择.NET Framework 3.5,输入项目名称"WPFBroseApp",选择项目存放位置,并选
中"创建解决方案的目录"复选框。
(4)单击"确定"按钮,完成创建向导的设置,Visual Studio 2008会根据模板自动生成WPF浏览器应用程序的基本框架以及默认的页面(Page)。
通过Visual Studio 2008自动生成的WPF浏览器应用程序的代码结构如图9-9所示,其中,包括以下几个主要部分。
Properties:包含应用程序版本信息(AssemblyInfo.cs定义)、资源文件(Resources. resx定义)、配置信息(Settings.settings定义)。
引用:包含WPF应用程序必需的引用,PresentationCore、PresentationFramework是主要增加的。
App.xaml:应用程序的XAML代码,主导应用程序的启动和退出等,App.xaml.cs是App.xaml的后台代码。
Page1.xaml:默认启动页面的XAML代码,Page1.xaml.cs是Page1.xaml的后台代码,该页面是可以修改的。
和WPF独立应用程序一样,WPF浏览器应用程序也是通过App.xaml启动的,只是它的StartupUri属性是Page1.xaml。WPF浏览器应用程序界面很像网页,所有页面都是从System.Windows.Controls.Page类直接集成得到的,可以前进或后退。
WPF页面的设计和WPF窗体类设计一样,可以通过Visual Studio 2008的可视化设计器进行设计,同样可以在页面上创建控件、设置控件的外观等。示例代码9-12是一个简单页面的XAML代码,其中Page的标题(Title)为Page1,对应后台代码中的C#类型为WPFBroseApp.Page1。该页面包含两个Label控件、一个TextBox控件、一个Button控件。
示例代码9-12:
<Page x:Class="WPFBroseApp.Page1" xmlns="schemas.microsoft/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft/winfx/2006/xaml" Title="Page1" Height="166" Width="311"> <Grid Background="Aquamarine" Height="154" Width="305"> <Grid.RowDefinitions> <RowDefinition Height="0*" /> <RowDefinition Height="185*" /> </Grid.RowDefinitions> <Label Margin="23,26,0,0" Name="label1" Height="32" VerticalAlignment="Top" FontSize="20" Grid.Row="1" HorizontalAlignment="Left" Width="260">第一个WPF浏览器应用程序!!!</Label> <TextBox Margin="111,69,0,0" Name="tbName" Grid.Row="1" HorizontalAlignment="Left" Width="148" Height="22" VerticalAlignment="Top">王先生</TextBox> <Label Margin="32,69,0,0" Name="label2" Grid.Row="1" HorizontalAlignment="Left" Width="71" Height="27" VerticalAlignment="Top">输入姓名:</Label> <Button Grid.Row="1" Margin="112,100,0,0" Name="btnEnter" FontSize="18" FontWeight ="Bold" Click="btnEnter_Click" Height="28" VerticalAlignment="Top" HorizontalAlignment="Left" Width="122">进入==>></Button> </Grid> </Page> |
通过选择"调试"→"启动调试fontweight几百正常"命令生成并执行WPFBroseApp应用程序,得到的界面如图9-10所示,该应用程序是承载在IE中运行的。生成的可执行程序以.xbap作为扩展名,默认在项目的Bin目录下。
图9-10顶端的前进和后退导航栏类似于Windows窗体的标题栏,由WPF自动生成和管理,并不属于开发人员开发区域。下面部分分别是两个Label和一个TextBox控件的效果图。
*注意* WPF浏览器应用程序只可以运行在IE中,但我们使用的.NET Framework版本必须安装在客户机系统中。在该模板中可以获得用于浏览器的丰富客户机功能。但是,在WPF浏览器应用程序中,需要把.NET Framework安装在客户机系统中,且仅支持IE。
创建这样的项目类型,需要XBAP(XAML Browser Application)文件。XBAP是一个XML文件,定义了应用程序和它包含的程序集,用于ClickOnce部署。
XBAP应用程序是一个部分信任的应用程序。只能在Internet权限中使用.NET代码。
WPF浏览器应用程序不同于Silverlight。Silverlight定义了一个WPF子集,它不需要把.NET
创建这样的项目类型,需要XBAP(XAML Browser Application)文件。XBAP是一个XML文件,定义了应用程序和它包含的程序集,用于ClickOnce部署。
XBAP应用程序是一个部分信任的应用程序。只能在Internet权限中使用.NET代码。
WPF浏览器应用程序不同于Silverlight。Silverlight定义了一个WPF子集,它不需要把.NET
Framework安装在客户机系统中,但需要把一个插件安装在浏览器上,且支持不同的浏览器和不同的操作系统。Silverlight 1.0不能用.NET编程,只能使用JavaScript编程访问XAML元素。Silverlight 1.1支持.NET Microframework。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论