安全中国首页 > 编程中心 > .NET编程
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

ASP.NET 2.0移动开发之属性重写和模板化[3]

更新时间:2008-7-21 1:55:47
责任编辑:ShellExp
热 点:
 当然,你还可以通过代码的方式将请求页面的浏览器信息通过MobileCapabilities对象显示页面上,代码如下:

<%@ Page Inherits="System.Web.UI.MobileControls.MobilePage"

Language="c#" %>

<script language="c#" runat="server">

public void Page_Load(Object sender, EventArgs e)

{

 System.Web.Mobile.MobileCapabilities currentCapabilities;

 MobileCapabilities currentCapabilities = (MobileCapabilities)Request.Browser;

 // 创建一个MobileCapabilities对象来获取浏览器的信息



 if(currentCapabilities.PreferredRenderingMIME=="text/html")

 {

Label2.Text = "你使用的是支持HTML的移动设备";

//如果是支持HTML的移动设备的话,显示上面的文本信息

 }

 else if(currentCapabilities.PreferredRenderingMIME == "text/vnd.wap.wml")

 {

Label2.Text = "你使用的是支持WML的移动设备";

//如果是支持WML的移动设备的话,显示上面的文本信息

 }

 Label1.Text = "屏幕的宽度(字符数): " + currentCapabilities.ScreenCharactersWidth;

 //显示当前移动设备每一行可以显示的字符数

}

</script>

 <Mobile:Form runat="server" id=frmTemplate >

<mobile:label ID="Label1" runat="server" />

<mobile:label ID="Label2" runat="server" />

 </Mobile:Form>

  提示:在某些情况下,某特定移动设备的MobileCapabilities对象获得的属性值并不是你期望的值。例如,我们经常在开发过程中直接使用桌面的IE来测试程序,你也许会认为PreferredRenderingType属性值为“html40”,而实际上这个值为“html32”,这是因为ASP.NET移动控件只支持HTML 3.2,所以发送到桌面IE的标记语言依然是HTML 3.2。

  MobileCapabilities的属性

  MobileCapabilities类包含了大量的属性,我们可以使用这些属性来获取移动设备及其浏览器的相关信息。关于该类的具体细节你可以查看MSDN,在这里我们只列举出一些常用的属性: 

  属性      说明

  Browser 浏览器的类型    例如Pocket IE、Microsoft Mobile Exploreri-mode、Nokia、Openwave和Ericsson等

  CanInitiateVoiceCall    当该设备的浏览器可以启动语音呼叫时返回true值

  CanSendMail    如果该设备的浏览器支持邮件的发送,就返回true值

  HasBackButton    如果该浏览器有一个专用的"上一步"按钮的话,则返回true值

  InputType    返回浏览器支持的输入类型,包括virtualKeyboard、 telephoneKeypad和keyboard等值

  IsColor    该设备是否支持颜色显示,是的话返回true值。

  MaximumSoftkeyLabelLength    返回软键标签可显示的文本的最大字符数

  MobileDeviceManufacturer    返回移动设备制造商的名称,如果为未知的话返回的是unknown

  MobileDeviceModel    获取移动设备的型号名(如果已知)

  NumberOfSoftkeys    返回移动设备上软键的数目。

  PreferredImageMime    返回浏览器通常首选的图像内容类型的MIME类型。这些值包括image/gif、image/jpeg、image/vnd.wap.wbmp和image/bmp

  PreferredRenderingMime    返回浏览器通常首选的内容类型的MIME类型。这些值包括text/html和text/vnd.wap.wml

  PreferredRenderingType    返回一个指出该浏览器使用的标记语言及版本信息的字符串,这些字符串通常为html32、wml11、wml12或者chtml10

  ScreenBitDepth    返回屏幕的显示深度(以每像素位数为单位)

  ScreenCharactersHeight    返回显示的近似高度(以字符行为单位)

  ScreenCharactersWidth    返回显示的近似宽度(以字符为单位)

  ScreenPixelsHeight    返回显示的近似高度(以像素为单位)

  ScreenPixelsWidth    返回显示的近似宽度(以像素为单位)

  SupportsIModeSymbols    获取一个值,该值指示浏览器是否支持i-mode符号。

  SupportsJPhoneSymbols   获取一个值,该值指示浏览器是否支持J-Phone特定的图片符号。

  我们可以使用HttpRequest对象的Browser属性指向MobileCapabilities对象的实例,然后可以使用此实例来读取请求浏览器和设备的功能。下面是测试MobileCapabilities对象的某个属性的代码片断:

MobileCapabilities capabilities = (MobileCapabilities)Request.Browser;

if (capabilities.ScreenPixelsWidth > 120)

{

 // 为大屏幕的移动设备添加的代码

}

else

{

 //为小屏幕的移动设备添加的代码

}

 
学习软件编程开发技术,推荐加入以下软件编程培训班:
易语言软件编程培训班(简单易学)  Delphi软件编程培训班  VC++软件编程培训班
VB软件编程培训班  JAVA高端编程就业研发班

学习网站开发制作技术,推荐加入以下网站开发培训班:
ASP.net网站开发项目实战班  ASP语言网站建设培训班

学习网络安全入侵防护技术,推荐加入以下技术培训班:
大型网络安全入侵防护班  网站脚本程序全方位安全检测班

学习网络管理、网吧运营维护技术(网管),推荐加入以下培训班:
大型网吧技术管理人才特训班  Linux网络嵌入架构工程师培训班

学习专项特殊技术,推荐加入以下专项技术培训班:
软件与游戏外挂脱壳破解班(逆向工程)  赚钱王道-网赚技能培训班  Flash动画设计师就业特训班

 
相关编程
一日一文章
 
一日一软件
一日一动画