|
|
 |

 |
|
Building .NET Applications for Mobile Devices
|
|
 |
Author |
 |
Andy Wigley, Peter Roxburgh
|
 |
|
Pages |
640
|
|
Disk |
1 Companion CD(s)
|
|
Level |
Int/Adv
|
|
Published |
03/06/2002
|
|
ISBN |
9780735615328
|
|
ISBN-10 |
0-7356-1532-2
|
|
Price(USD) |
$59.99
To see this book's discounted price, select a reseller below.
|
|
|
|
|
 |
|
|
Index
Symbols
@ (in ADO.NET), 322
A
Abandon method, 335
access control
forms-based authentication, 455-57
overview, 454-55
role and use authorization, 459-60
Windows-based authentication, 455, 457-59
Action property, 112, 114
Activate event, 114
Active Server Pages (ASP), 74, 196
ActiveForm property, 104
Adapter property, 503. See also device adapters
AdConfig.xml configuration file, 200
AdCreated property, 199
Add method, 335, 336
Add Project Output Group dialog box, 448
Add Reference dialog box, 327-28
AddHandler method, 528
ADO.NET
data overview, 312
objects overview, 312
overview, 299
role of Application object, 347
SQL Server .NET Data Provider, 312-13
AdRotator control
arguments, 78
overview, 196
properties, 198-99
syntax, 198
usage example, 199-201
XML configuration file elements, 196, 197
AdRotatorExample file, 199-200
Advanced Mobile Phone Service (AMPS), 6
AdvertisementFile property, 198
Advertisements.xml file, 197
aligning controls, 76
Alignment property, 76, 105, 233
AllFields property, 170
<allow> element, 459, 460
AlternateFormat property, 195
AlternateText property, 141, 357
AlternateUrl property, 195
<AlternatingItemTemplate> element
naming containers and, 310
templated control support, 267, 276, 280, 281- 82, 290
Application object
caching and, 362-63
state management and, 347, 348, 349, 398, 399
Application property, 347
application state
in Global.asax, 347-53, 362
overview, 29, 30, 333
XML Web services and, 398-401
application-level tracing, 418, 420-22, 438
ApplicationObjectExample files, 348-49
applications. See also mobile Web applications
calling from browsers, 96-97
copying, 67, 68, 86, 444-46
life cycle, 90-91
mobile versions of desktop applications, 355, 359-61
non-Web, 65
stateful vs. stateless, 29
Application_Start method, 362
ApplicationStateWebService example, 398-99
Applied Device Filters dialog box, 263-65, 294- 95
appointments, entering dates. See Calendar con.trol
ARPANet, 4
ArrayList collection, 300, 301, 302, 308-9
ArrayList object, 175
arrays, as data type, 402
.ascx files, 462
.asmx files, 385, 387
ASP.NET
abstracting user interface for mobile devices, 23-24
application security, 454-60
backward compatibility, 26
building appications with integrated desktop and mobile access, 359-61
caching, 362, 364-73
capabilities, 18-19
configuration system, 450-54
debugging capabilities, 30-32
declarative data binding feature, 306-11
history, 17-18
implementing Hello World project, 57-58
vs. Mobile Internet Designer, 58-61
Mobile Internet Toolkit and, 15
.NET Framework overview and, 10, 13-14
overview, 18-19
parser errors, 414
runtime errors, 414
sample Web Forms page, 20
Trace facility, 417-22
viewing source, 58-61
ways to code applications, 27-28
ASP.NET controls, 21, 268
ASP.NET Web Application project type, 64
.aspx files. See also mobile Web Forms pages
code-behind files, 101, 108
control examples, 108
Default.aspx file, 40, 58-59, 101-2
defined, 48
in HTML view, 58-60
MobilePage class and, 100-101
MobileWebForm1 default file, 39, 40, 41, 63
renaming, 40, 41
in three-tier design, 359
assemblies
compiling resource files into, 379
custom controls in, 481-83, 514
shared, 449
versioning, 449
AT&T Wireless, 7, 8
attributes, custom, 125
authentication
forms-based, 455-57
IIS and, 457-58
overview, 454-55
Windows-based, 455, 457-59
authorization, 454, 455, 459-60
AutoEventWireup attribute, 78, 92, 102
AutoGenerateFields property, 169, 170, 174, 175
B
BackColor property, 105, 233
BackCommandText property, 170
BackLabel property, 222
backward navigation, 53-54
Berners-Lee, Tim, 4
BindList method, 329, 331
Blackberry, 5
BreakAfter property, 105, 144, 189, 570
Browser property, 254, 567, 581, 582
BufferResponse attribute, 395
C
C#
vs. C++, 38, 72-73
compiling code-behind files, 96-97
control examples, 108
.NET common language specification and, 11, 26
as programming language choice, 26, 38, 72-73
vs. Visual Basic, 103
C++
vs. C#, 38, 72-73
.NET common language specification and, 11
selecting as preferred language, 38
Cache object, 370, 373
CacheDependency object, 373
CacheDuration attribute, 395
caching, 362, 364-73
Calendar control
differences among mobile clients, 54-56
output examples, 55, 56, 189, 193
overview, 188-89
properties, 190-91
steps in creating applications, 54-55
syntax, 189-90
usage example, 192-93
CalendarEntryText property, 189, 190
CalendarExample files, 192
CanInitiateVoiceCall property, 254, 567
CanRender* property, 569
CanSendMail property, 254, 567
CausesValidation property, 135
cell phones. See mobile phones
change events, raising, 489-92
character set encodings, 382
child controls
adding in device adapter classes, 549-51
creating in composite controls, 484-88
<Choice> element
adding more for different devices, 270-72
default choice, 250-51
defining templates within, 268
device filters, 255-62
list of attributes, 250
list of child elements, 250
sample code, 251
syntax, 250
cHTML (compact HTML), 8, 9
ChtmlDeviceAdapters set, 577
classes
enumerable, 157-58
.NET Framework, 87-91
as Web service data type, 402
Clear method, 335
Click event, 77, 82
client-side execution, 202, 217
CLS-compliant languages, 26-27
CMshortdate files, 485-88, 488-91, 494-96
CMsimple example, 507, 508, 509-10, 514
CMTable custom control
implementing template support, 553-60
templated output, 559, 560
CMTableDB example
adding view state support, 529-35
building control, 517-24
creating child controls, 549-51
implementing OnDataBind event, 526-29
implementing pagination support, 524-26
implementing postback, 538-42
implementing postdata processing, 543-45
Codebehind attribute, 92
code-behind files
compiling, 96-97
filename extensions, 27
Global.asax files and, 335
Hello Universe sample application, 75-80
implementing code, 27-28
vs. inline coding, 27, 74-75
namespaces and, 108
naming conventions, 27, 101, 108, 335
overview, 27, 74-75, 101
referencing in Page directive, 92, 101
in TicToc sample application, 92, 93-95
coding techniques
code-behind files vs. inline code, 74-75
inline code, 73-74
overview, 72
color
HTML list for mobile controls, 234
limited wireless device palette, 234
COM and COM+, 11
Command control
overview, 134
properties and events, 135-38
syntax, 134-35
usage example, 138-39
Command object, 312, 313, 314, 318
CommandArgument property, 135, 138
CommandExample files, 139
CommandName property, 136, 138, 178, 179
Commands property, 170, 179
CommandStyle property, 170
Common Gateway Interface (CGI), 17-18, 383
common language runtime (CLR), 72, 89
Common Language Specification (CLS), 11. See also CLS-compliant languages
Common Type System (CTS), 72
compact HTML (cHTML), 8, 9
CompareExample files, 208-9
CompareValidator control
output example, 208-10
overview, 206
properties, 207-8
syntax, 206-7
usage example, 208-10
comparison evaluator filters, 255, 256, 264
compilation errors, 414
compiled custom controls, 481-83
compiling code-behind files, 96-97
Component Designer, Visual Studio .NET, 324- 27
composite controls
building, 483-96
code illustration of functionality, 484-88
creating child controls, 484-88
overview, 474-75
concatenating string objects, 363
configuration errors, 414
ConfirmDates method, 87, 88-89
Connection object, 312, 313
ConsumeApplicationStateWebService example, 400-401
ConsumeDataTypesWebService example, 404-5
container controls
Form control, 110-16, 235
overview, 109
Panel control, 110, 116-18, 235
rules for containment, 109-10
style property inheritance, 235-36
content, localized, 377-81
<ContentTemplate> element, 267, 268, 286, 468, 469
Control base class, 77, 104, 311, 468, 484, 512
control classes vs. device adapter classes, 497-98, 499, 502, 576
<control> element, 578, 579
Control property, 503, 511-12, 550
controls. See also custom controls; user controls
Adapter property, 503
adding to mobile Form controls, 49-52
aligning, 76
applying templates, 551-52
building by composition, 474, 475, 483-96
building by inheritance, 477-80
Calendar control. See Calendar control
common behavior, 104-7
commonly used properties, 105-7
container, 109-18
custom, 474-96
custom attributes, 125
data bound, 517-29, 553-60
defining property overrides, 265-66
vs. device adapters, 499, 502
event handling and, 76-78, 282
hierarchical organization, 311, 468
ID naming convention, 53
implementing support for templates, 552-60
life cycle, 475-78, 498-99, 500-501
limited layout possibilities, 50
NamingContainer property and, 311
partial class hierarchy, 99, 100
postback data and, 543-51
setting properties in code, 102-3, 289-92
setting properties in Mobile Internet Designer, 51-52, 104
special-purpose, 187-201
steps in life cycle, 475-78
style attributes, 105-7
style properties overview, 229-30
templated, 230, 267-98
Toolbox example, 42
user interface example, 42
ways to apply styles, 231-32
Controls property, 291
ControlToCompare property, 207
ControlToValidate property, 204, 207, 211, 215
cookies
as method for maintaining state, 333
mobile device support, 338, 339-40
overview, 29-30
Copy Project feature, 67, 86, 444-45
copying
applications, 67, 68, 86, 444-46
project files, 67, 68, 86, 444-46
core controls
class hierarchy, 119
Command control, 134-39
Image control, 140-46
Label control, 119-21
Link control, 130-34
overview, 118-19
Textbox control, 122-27
TextView control, 127-30
Count property, 335
CreateChildControls method, 484, 488, 552
CreateSpecificCulture method, 376
CreateTemplatedUI method, 552
.cs files, 27, 61. See also code-behind files
.csproj files, 67
Culture property, 374, 375, 376, 380, 473
culture settings, 374-77
CultureInfo object, 374, 376, 378
CurrentCulture property, 374, 376
CurrentPage property, 113, 114
CurrentUICulture property, 375
custom attributes, 125
custom controls. See also user controls
building by composition, 474, 475, 483-96
building by inheritance, 477-80
building from scratch, 498-507
building Table control, 507-17
compiled into assemblies, 481-83, 514
creating child controls, 549-51
data bound, 517-29, 553-60
enabling client postbacks, 538-42
implementing support for templates, 552-60
overview, 474-75
saving properties to ViewState object, 529-30
steps in life cycle, 475-78, 498-99
supporting view state, 529-35
templated, 552-60
vs. user controls, 474-75
custom error pages, 422-25
CustomErrorInCode example, 425-28
CustomExample files, 219-21
CustomPaginationExample files, 166-67
CustomValidator control
overview, 218
properties, 218-19
syntax, 218
usage example, 219-21
D
DARPA (Defense Research Projects Agency), 4
data binding
advanced features of list controls, 299-305
custom controls, 517-29
declarative, 306-11
implementing OnDataBind event handler, 526- 29
implementing template support for list controls, 553-60
in ObjectListItemDetailsTemplateExample, 285
data caching, 362, 364, 372-73
data components
adding references to projects, 327-28
creating, 324-27
Web application use, 327-31
data providers, 312-13
data types, for XML Web services, 401-6
DataAccessWebservice example, 408-11
DataAdapter object, 312, 313, 317
Database Designer, Visual Studio .NET, 323
databases
creating middle-tier components for accessing, 324-27
creating mobile Web applications to update, 317-23
Visual Studio .NET tools, 323-31
DataBind method
in CMTableViewState example, 533-34
declarative data binding and, 306-7, 309
extracting underlying data, 280
role in building data bound custom controls, 518
role in developing templated custom control, 552, 558
role in implementing OnDataBind event han.dler, 528
DataBinder.Eval method, 309-10
DataBindingInObjectListTemplateExample files, 311
DataBindingInTemplateExample files, 310
DataboundListExample files, 158-60
DataColumn object, 316
DataComponentExample files, 327-31
DataItem property, 302-3, 531
DataMember property
IListSource interface and, 158
List control, 162
ObjectList control, 170
SelectionList control, 149, 150
in specialized List control, 478, 480
DataReader object, 312, 313, 314-15, 364
DataReaderExample files, 314-15
DataRow object, 316
DataSet object
data binding and, 316
vs. DataReader object, 364
IListSource interface and, 157-58, 301
overview, 157-58, 312
transferring data between components, 324-27
updating databases and, 317
viewing XML response in Internet Explorer, 407
as Web service data type, 402, 406-11
DataSetExample files, 316
DataSource property, 149, 150, 162, 170
DataTable object, 157, 301, 316
DataTextField property
in data bound custom control, 518
List control, 162, 304
SelectionList control, 149, 150, 304
in specialized List control, 478, 480
DataTypesWebService example, 403-4
DataUpdateExample files, 318-22
DataValueField property
in data bound custom control, 518
in List control, 162, 303, 304
in SelectionList control, 149, 151, 304
in specialized List control, 478, 480
DataView object, 301, 409
dates, entering. See Calendar control
DateTime class, 87
Deactivate event, 114, 115
Debug class, 32
debugging
in ASP.NET, 30-32
mobile Web applications, 414-17
turning off debug support, 361, 416
declarative data binding, 306-11
DeclarativeDataBinding example, 307-8
Decoration property, 162
default files, 40, 42
default style sheets, 238
DefaultCommand property, 171
<deny> element, 459, 460
Description attribute, 395, 396
desktop applications, integrating access with mobile devices, 355, 359-61
Details property, 171
DetailsCommandText property, 171
device adapter classes
adding child controls, 549-51
vs. control classes, 497-98, 499, 502, 576
providing different user interfaces, 545-48
device adapters
adding existing sources to projects, 505-7
adding style attributes to markup, 512-14
configuring, 514-17
Control property, 503, 511-12
vs. controls, 499, 502
defining sets, 579-82
grouping into sets, 575, 577-79
overview, 499, 502-4, 575
role at runtime, 576-77
role in mobile applications, 499, 502-7
set inheritance, 579-80
support and availability, 504-5
user interfaces and, 545-48
writing device markup, 512
<device> element
declaring device adapter sets, 577-78, 579
inheritsFrom attribute, 578, 579
list of attributes, 577-78
device filters
applying for templating with Visual Studio .NET tools, 293-95
comparison evaluators, 255, 256, 264
creating and applying with Applied Device Fil.ters dialog box, 263-65
defining in Web.config file, 255-62
defining with Mobile Internet Designer tools, 262-66, 293
evaluator delegates, 256, 257-62, 265
example, 258-62
MobileCapabilities class properties and, 253-55
overview, 253
referencing from within DeviceSpecific/Choice constructs, 262
Device property, 104
device-resident glyphs, 144-46
DeviceSpecific control, 263
<DeviceSpecific> element, 250, 252, 537, 551
device-specific markup, 231, 242, 272-73
DeviceSpecific/Choice constructs
adding filters, 247-48
defining property overrides, 230
enabling on desired controls with Visual Studio .NET tools, 293
evaluator delegates and, 256, 257
overview, 230, 248
role in application design, 358
sample code, 248-49
StyleChoiceFiltersExample project, 242-43
templates and, 231, 243, 268, 272-73
directives, 60-61. See also Page directive
Disco.exe tool, 393
Display property, 204, 207, 211, 215, 222
Dispose method, 477, 501
Dynamic Help window, Visual Studio .NET, 57
E
electronic mail, 4
Empty Web project type, 64
emulators. See also Nokia; Openwave; Pocket Internet Explorer
integrating into Visual Studio .NET, 440-42
testing applications with Pocket PC emulator, 429-30
verifying identification, 435-40
verifying support, 433-35
EnableSession attribute, 395, 396
EnableViewState property, 345, 529
EnsureChildControls method, 484, 488
EnterLayout method, 512, 513
EnterStyle method, 512, 513
enumerable classes, 157-58
enumeration data types, 403
Ericsson, 7, 432
error pages, custom, 422-25
ErrorMessage property, 204, 207, 211, 215, 222
errors
ASP.NET parser-type, 414
compilation-type, 414
configuration-type, 414
debugging mobile Web applications, 414-17
handling programmatically, 425-28
handling via custom pages, 422-25
runtime, 414
evaluator delegate filters, 256, 257-62, 265
event bubbling, 138
event-driven programs, 76, 77-78
events
controls embedded in templates, 282
delegates and, 78
overview, 28, 78
raising, 78, 489-92
responding in user controls, 470-74
trapping, 77
Execute method, 322
ExitLayout method, 512
ExitStyle method, 512
external style sheets
attaching, 245
creating, 244-45
example, 245
EzWAP browser, 566, 570-74
F
Fields property, 171
file share, 66
FileEncoding attribute, 382
files. See project files
FileStream object, 87, 88, 89
<filter> element, 255-56
FindControl method, 291-92, 468
FirstDayOfWeek property, 190
FirstVisibleItemIndex property, 523, 525
Font property, 105, 233, 487
Font-Bold property, 106, 233, 491
FontInfo object, 105
Font-Italic property, 106, 233
Font-Name property, 105, 233
Font-Size property, 106, 233
<FooterTemplate> element
Form control and, 115, 267, 269-72
naming containers and, 290
templated control support, 267, 268, 269-72, 276, 285
ForeColor property, 234, 487, 491
Fore-Color property, 106
Form control. See also mobile Form controls
coding, 112-13
as container control, 110, 116-18, 235
<DeviceSpecific> construct, 252
formatting tags, 111-12
list of supported templates, 267
output example, 116
overview, 110-12
properties, 113-15
syntax, 112-13
template use, 269-75
TemplateContainer object, 290-91
as templated control, 230, 267
usage example, 115
Format property, 136
formatting tags, 112-13
FormExample.aspx file, 115
<forms> element, 456
forms-based authentication, 455-57
FormToValidate property, 222
forward navigation, 53, 54
fragment caching, 362, 364, 371-72
FrontPage Server Extensions, 66, 69
G
garbage collection feature, 89
General Packet Radio Service (GPRS), 15
get accessor, 481
GetChildControlType method, 551
GetTemplate method, 552
GetTriangleStats method, 403
.gif files, 142
Global.asax file, 335, 336, 347-48, 350, 366
glyphs, device-resident, 144-46
Go.America mobile phone emulators, 432
graphics
AlternateText parameter, 357
mobile device limitations, 356-57
mobile platform support for files, 141-42
H
haiku, 356
Handheld Device Markup Language (HDML), 7, 44. See also Wireless Markup Language (WML)
handheld devices. See also mobile devices
identifying, 565-67
limitations, 6-7
support for new clients, 561-75
testing applications, 35, 43, 44-47
HandlePagePostBackEvent method, 538
HasBackButton property, 254, 567
HasCapability method, 255, 256, 257-58, 288, 469
HasItemCommandHandler property, 538
HDML (Handheld Device Markup Language), 7, 44. See also Wireless Markup Language (WML)
<HeaderTemplate> element
Form control and, 115, 267, 269-72
naming containers and, 290, 291
templated control support, 267, 268, 269-72, 276, 285
HeaderText property, 222
Hello Universe sample application, 75-80
Hello World
creating XML Web services in text editor, 385- 86
creating XML Web services in Visual Studio .NET, 386-87
deploying as XML Web service, 387-93
displaying in ASP.NET label control, 20-21
implementing ASP.NET project, 57-58
help, online, Visual Studio .NET, 56-57
hidden variables, 333, 340-43
HiddenVariables property, 104, 340-41
HiddenVariablesExample files, 341-43
HTML browsers
Calendar control, 189
CMsimple example, 509-10
device adapters and, 502, 504-7, 523, 547, 548
inserting device-specific markup intemplates, 272-73
page-level tracing, 417-18, 422
rendering list items, 186
sample device filter application, 258
Short Date user control, 464-65
table support, 177
vs. WML browsers, 132-33
HTML server controls, 21
HtmlDeviceAdapters set, 577
HtmlMobileTextWriter object, 512, 513
HTTP (Hypertext Transfer Protocol)
Internet history, 4
Openwave simulator configuration and, 46
as stateless protocol, 333, 398
XML Web services and, 394, 398, 403
HTTP User-Agent request header, 565-66
HttpApplication class, 334, 347
HttpApplicationState class, 347
HttpContext object, 581
HttpRequest object, 253, 258, 562
Http.SessionState class, 334
Hypertext Markup Language (HTML)
vs. handheld device limitations, 6-7
vs. WML, 44, 545-46
I
ICollection interface, 517
ID property, 106
IEnumerable interface
code examples, 158, 159-60, 301-3, 518
collection class support, 157, 300
IIS. See Microsoft Internet Information Services (IIS)
IListSource interface, 157, 158, 300, 301
Image control
device-resident glyphs, 144-46
output example, 146
overview, 140
properties, 140-42
syntax, 140
usage example, 143-44
ImageExample file, 143
ImageGlyphExample file, 145
ImageKey property, 198
ImageUrl property, 136, 141, 143, 144
i-mode service, 8, 9, 144, 338
INamingContainer interface, 311, 484, 549
inheritance
building custom controls, 477-80
device adapter sets, 579-80
overview, 28
style properties, 235-36
Inherits attribute, 92
InitializeComponent method, 466, 469
InitialValue property, 204
inline code
vs. code-behind files, 74-75
data binding method, 73, 74
overview, 73
script tag method, 73-74
InputType property, 254, 567
InternalItemCount method, 525
Internet Explorer. See also Pocket Internet Explorer
vs. Pocket Internet Explorer, 55
testing Web forms, 31
viewing response from XML Web services, 407-8
Internet history, 4
Internet Information Services (IIS), 34, 288, 457- 58
IPostBackDataHandler interface, 543, 544, 545
IPostBackEventHandler interface, 539, 540
IsColor property, 254, 567
IsCookieless property, 335
ISerializable interface, 530
IsMobileDevice property, 360
IsMultiSelect property, 152
IsNewSession property, 335
ISource interface, 517
IsPostBack property, 95, 363
IsReadOnly property, 335
IsSynchronized property, 335
IStateManager interface, 530-35
IsTemplated property, 552
IsValid property, 204, 207, 211, 215
<Item> element, 153, 300, 536, 537
Item property, 335
ItemCommand event. See OnItemCommand event handler
ItemCommand property, 162, 163, 538
ItemCount property, 160, 162, 165, 168, 171
ItemDataBind event. See OnItemDataBind event handler
<ItemDetailsTemplate> element, 267, 282-85, 290, 311
Items collection, 165
Items property, 151, 153, 300, 302, 523
ItemsAsLinks property, 161, 162
<ItemTemplate> element
DataBinder.Eval static method and, 309-10
naming containers and, 310
templated control support, 267, 268, 276, 280, 281-82, 290
ItemWeight property, 525
J
JavaScript functions, adding, 273
.jpg files, 142
just-in-time (JIT) compilers, 11
K
Keys property, 335
KeywordFilter property, 199
L
Label control
adding to mobile Form controls, 51
in ConsumeDataTypesWebService example, 404
in ConsumeMyFirstWebService example, 390, 392
creating in code, 102-3
DeviceSpecific/Choice construct, 252
in headers and footers, 270, 291
output example, 121
overview, 119
properties, 120
in SessionObjectExample project, 336
in simple user control example, 462
styles example, 231
syntax, 119-20
Text property, 79, 82, 120, 377, 390, 392, 404, 487
usage example, 120-21
LabelExample files, 121
LabelField property, 171, 175, 177
LabelStyle property, 171
Language attribute, 92
language preferences, 355. See also multilingual mobile Web applications
Licklider, J. C. R., 4
life cycle
application, 90-91
controls, 475-78, 498-99, 500-501
Link control
adding to mobile Form controls, 51-52
output example, 134
overview, 131
properties, 131-33
syntax, 131
usage example, 133-34
LinkExample file, 133
List control. See also list controls
advanced data binding features, 299, 300, 301, 304
building xmlList custom control, 477-80
capabilities, 148-49
custom pagination, 363
defining items, 300
list of supported templates, 267
MobileListItem object, 280-81, 285
NamingContainer property and, 311
output example, 164
overriding single-field display, 304-5
overview, 160
pagination support, 165-68
properties, 161, 162
syntax, 160-61
template use, 275-82
as templated control, 230, 267
trapping user selections, 163-64
usage, 161, 163-68
list controls. See also List control
accessing data items in templates, 310-11
advanced data binding features, 299-305
class hierarchy, 147
data bound, implementing template support, 553-60
List control, 148, 160-68
ObjectList control, 148, 168-86
overriding single-field display, 304-5
overview, 147-49
sample output, 237
SelectionList control, 147, 148, 149-60
style property inheritance, 236-37
ListDisplayMultipleFieldsExample files, 304
ListItem property, 163, 540
ListItemCommandExample files, 163-64
Load event, 77
LoadItems event. See OnLoadItems event handler
LoadItems property, 162
LoadPostData method
in CMTable example, 545, 550
overview, 476, 493, 500, 543, 545
LoadViewState method
overview, 476, 493, 500
recovering view state information, 346, 530, 532-34, 559
localized content, 377-81
LocalizingExample files, 377, 380-81
locks, 352-53
M
Machine.config file
in configuration hierarchy, 451
device adapter set configuration, 514, 577, 579
new client support, 562-64
overview, 450, 451, 452
vs. Web.config file, 450, 564, 575
markup languages. See also Handheld Device Markup Language (HDML); Hypertext Markup Language (HTML); Wireless Markup Language (WML)
backward compatibility, 505
device-specific templates and, 268, 272-73
history, 6-10
identifying mobile device capabilities, 570-72
writing WML code to identify capabilities, 570- 72
MaximumRenderedPageSize property, 568
MaximumSoftkeyLabelLength property, 570, 572
MaximumSoftkeyLabelStrength property, 254, 568
MaximumValue property, 211
MaxLength property, 122, 123
MessageName attribute, 395
messaging
Short Message Service, 5
Smart Messaging, 7
Method property, 112, 114
Microsoft Internet Information Services (IIS), 34, 288, 457-58
Microsoft .NET Framework. See .NET Framework
Microsoft Passport, 455
Microsoft Visual Studio .NET. See Visual Studio .NET
MinimumValue property, 211
mobile controls. See controls
mobile data communication. See wireless commu.nication
mobile devices. See also mobile phones
application design principles, 356-58
applying device-specific styles, 242-43
defining property overrides, 230, 248-66
display limitations, 356-57
functionality issues, 356-58
identifying, 565-67
identifying capabilities, 569-74
input limitations, 357-58
integrating applications with desktop access, 355, 359-61
navigating Web applications, 53-54
PDAs, 9, 10, 357
support for cookies, 338, 339-40
support for new clients, 561-75
testing applications, 35, 43, 44-47
mobile Form controls
adding controls to, 49-52
adding to Web Forms pages, 48-49
as containers for controls, 49
limited layout possibilities, 50
vs. mobile Web Forms pages, 48
on new Web Forms pages, 48-49, 50
overview, 24-25, 48
structuring more than one, 51-53
Mobile Internet Controls Runtime, 54, 253
Mobile Internet Designer
adding controls to mobile Form controls, 49- 52
vs. ASP.NET source, 49, 58
defining device filters, 262-66
defining templates, 292-96
Design view vs. HTML view, 58-61
overview, 48
Mobile Internet Toolkit
advantages, 15
container controls, 109-18
controls overview, 99, 100, 104-9
core controls, 118-46
default output, 358
default style sheets, 238
extensible device support architecture, 504-5
generating WML anchor element, 570
installing, 34
list controls, 147-86
Mobile Internet Controls Runtime, 54
.NET Framework and, 10, 14
overview, 3
special-purpose controls, 187-201
styles overview, 229-30
system requirements, 33-34
testing applications with mobile phone emula.tors, 431-40
testing applications with Pocket PC emulator, 429-30
validation controls, 201-27
verifying emulator identification, 435-40
verifying emulator support, 433-35
mobile phones. See also Nokia; Openwave
Calendar control, 55-56
cookies and, 30
as data delivery devices, 6-8
display limitations, 356-57
functionality issues, 356-58
input limitations, 357-58
new models, 569
testing applications with emulators, 431-40
Mobile Web Application project type, 64, 256
mobile Web applications
building, 43
configuring, 450-54
copying, 67, 68, 86, 444-46
creating in Visual Studio .NET, 35-43, 50
creating to update databases, 317-23
custom error pages, 422-25
debugging, 414-17
design principles, 356-58
Hello Universe sample application, 75-80
localized content, 377-81
multilingual and multicultural, 372-83
naming projects, 38
navigating backward and forward, 53-54
optimizing performance, 361-73
running, 43
Scheduler Plus sample application, 86-91
Scheduler sample application, 54-56, 80-86
Solution Explorer files, 62-64
testing, 35, 43, 44-47
mobile Web Forms pages
adding mobile Form controls to, 48-49
adding user control declarations, 463
changing file name, 40, 41
coding strategies, 72-75
controls in Toolbox, 42
defined, 48
login page, 455-57
vs. mobile Form controls, 48
as MobilePage objects, 110
overview, 23-26
page split information, 243-44
in Properties dialog box, 39-40
source file contents, 99-100
URLs for, 359-61
ways to construct, 25-26
ways to use templates, 268-69
MobileCapabilities object
Browser property, 562, 582
in CustomEvals source file, 259-60
device adapter classes and, 577
HasCapability method, 255, 256, 257-58, 288, 469
IsMobileDevice property, 360
properties, 253-55, 567-68, 569, 571-72
MobileControl base class
creating controls from scratch, 475, 483-84, 497
inheritance role, 239, 250, 484, 507, 509
IsTemplated property, 552
overview, 104-5
MobileControlBuilder object, 535-37, 551
<mobileControls> element, 577
MobileDeviceManufacturer property, 254, 568
MobileDeviceModel property, 254, 568
MobileListItem object
in CMTableDB example, 518
as container for templates, 280-81, 285
MobileListItemCollection object and, 301, 302- 3
overview, 153
role in building controls by inheritance, 478
role in custom pagination, 165
TemplateContainer class and, 280-81, 285, 310
testing objects, 155-56
MobileListItemCollection object
in CMTableDB example, 518, 523
MobileListItem object and, 300-301, 302
overview, 153, 157
testing objects, 155
MobilePage object
DataBind method, 306-7
HiddenVariables property, 104, 340
IsPostback property, 95, 363
Load event and, 77
LoadViewState method, 346
mobile Web Forms pages as, 110
overview, 100-104
properties, 104
Request property, 253
Session property, 334
Trace property, 417, 419
ViewState property, 84, 104, 344
MobileTextWriter class, 512, 538
MobileWebForm1 default file, 39, 40, 41, 63
Moore's Law, 3
MoreText property, 171
Motorola, 6, 7
MoveText property, 378
MSDE Server, 313
multicultural mobile Web applications, 372-83
multilanguage support, 355
multilingual mobile Web applications, 372-83
MultipleSelectionListExample files, 155-56
munged URLs, 338-39, 340
Next
Last Updated: February 19, 2002
|