Accelerometer
debugging output, 196
3D vector, 196
emulator, 197
magnitude calculation, 197
programming
AccelerometerHelper class, 199–202
CompositeTransform object, 202
Current2DAcceleration, 202
Game1 class, 199
Game1.Initialize() method, 198
Game1.Update() method, 202
GameObject class, 202
Microsoft.Devices.Sensors assembly, 198
ReadingChanged event handler, 199
Start() method, 198
TimeStamp variable, 199
Vector3 variable, 199
AccelerometerTemp, 199
Activated event, 544
ActiveSongChanged event, 453
AddParticles method, 548
AdvancedDataBinding template, 415
AdventureWorksModel EF model, 272
Album.GetAlbumArt() method, 444
AlienGame_Activated method, 545
AlienShooter
AlienShooterContent project folder, 484
AlienShooterGame() constructor, 484
collision detection and memory management, 518, 519
frame rate, 482
game management framework, 486, 487
game structure
AlienShooterSpriteSheet.xml Sprite Sheet XML File, 491
background textures, 493
content pipeline, 489
content project, 489
Draw method, 490
GamePlayScreen class, 491
Hero Spaceship, 493
HiDef profile, 494
LoadContent method, 490
placeholder draw code, 492, 493
screenRect variable, 491
solution tool window, 491, 492
sprite sheet, 490
SpriteFont class (see SpriteFont class)
SpriteSheetPipeline and SpriteSheetRuntime (phone) projects, 490
verbose computation, 493
Game.LoadContent method, 482
Game.OnExiting method, 485
Game1.cs class, 499
Game1.Draw and Game1.Update method, 484
GameObject class, 504
collision detection, 504
GameObject constructor, 503, 504
loadedTexture parameter, 504
properties, 504
ResetGameObject method, 506
screenRect parameter, 504
spriteName parameter, 504
UpdateAnimation method, 506
GameplayScreen
update and draw methods, 517
GameStateManagementSample (phone) sample, 483
GameStatusBoard class, 513, 514
genre attribute, 483
HelloXNA sample, 482
helper functions, 485
Hero Ship class, 508
sound effects, 512
user input, 508
UserGameObject class core methods, 511
Microsoft.Xna.Framework.DrawableGameComponent class, 485
Microsoft.Xna.Framework.Game base class, 485
Missile class, 512
ScreenManager class, 483
screens and menus options, 487, 489
sprite animation
animated sprites, 503
2D game, 499
frameTime variable, 502
Game1.Update method, 502
GameplayScreen class, 503
individual sprite files, 500
SpriteAnimationSpriteSheet.xml Content File, 500, 501
spriteIndex variable, 502
SpriteSheetProcessor, 501
WMManifest.xml file, 483
XNA Game Studio 4.0 Windows Phone 7.5 Game (4.0) project template, 483
adding to project, 546
implementing in game, 546, 554
tombstone support in, 544, 545
AlienShooter.ParticleSystem namespace, 546
AlienShooterGame() constructor, 544
AlienShooterGame.Components collection, 548
AlphaTest class, 562
AnimateGreenRect, 256
Anonymous identifier (ANID), 305, 306
<App> element, 466
Application Execution Model
Fast App Switching (FAS), 296
Lock Screen, 301
user experience, 297
Application.GetResourceStream, 470
ApplicationTitle, 416
Application tile
updating without MPNS, 615, 617
ApplySteering method, 573
ApplyThrust method, 573
ARGB, 227
aspectRatio parameter, 565
Assets
of music+videos hub application, 465, 466
Asynchronous programming, 263
fire and forget background processing, 263–266
progress report and cancellation, 266, 268, 270
Audio and video media, 446, 454
DRM, 452
in emulator, 446
progressive download video, 446, 450
supported codecs and containers, 446
Back button, 301
Back hard button, 543
BasicEffect class, 562
basicEffect.World property, 567
BeginInvoke method, 230
Binding data, advanced, 415, 433
Binding.Converter parameter, 432
licensing, 290
pushpin object, 292
BoundingEllipse, 211
Camera GameComponent object, 564
Camera object
Camera sensor
ARGB, 231
CameraCaptureTask, 227
CameraStatus.Text, 230
CameraType.FrontFacing, 228
CameraType.Primary, 228
CameraType property, 227
CaptureThumbnailAvailable event, 230
CustomCamera.xaml, 227
CustomCamera_Loaded event, 228–229
DataTemplate, 230
Dispatch.BeginInvoke marshals, 230
emulator, 229
LayoutRoot Grid object, 227–228
ListBox, 229
MediaLibrary, 227
MSDN documentation, 231
PhotoCamera class, 227
PhotoCamera object, 227
Take Pic Button, 229
ThumbImages, 230
VideoBrush object, 227
VideoBrush.SetSource, 228
viewfinder, 228
YCbCr, 231
Camera.ResetPosition method, 577
Camera.Update method, 569
Camera.View property, 569
CameraButtons class, 227
cameraDirection parameter, 564
cameraPosition parameter, 564
cameraUpVector parameter, 564
Canvas object, 98
CaptureSource object, 231
centerX value, 224
CheckForCollisions method, 547
Closing event, 544
Codecs
supported for video and audio media, 446
ColorAnimation, 132
ColorClass objects, 166
ColorListBox, 179
ColorListBox DataTemplate, 168
ColorListBox.ItemsSource, 167
ColorListBox.SelectedItem object, 168
ColorsClass.ColorsCollection, 167
CommandParameter, 420
Compass sensor
Bing Maps, 214
calibration UI, 216
compass_CurrentValueChanged event handler, 213
CompositeTransform, 215
dead reckoning navigation
Application Bar, 217
BEARING_ACCURACY_LIMIT, 220–21
definition, 217
DispatcherTimer, 217
DRDirection, 218
DRMovementState, 218
DRNavigationStep, 218
IDisposable interface, 221
INotifyPropertyChanged interface, 221
ListBox control, 217
_processTimer, 218
processTimer_Tick event handler, 218–220
sample, 217
switch statement, 220
Ellipse object, 211
Expression Blend, 212
Grid XamlCompass, 211
initialization code, 216
Initialize method, 213
magnetic objects, 210
magnetometer sensor, 210
Microsoft.Devices.Sensors statement, 212
String.Format, 215
test UI, 214
TextBlock control, 211
TimeBetweenUpdates property, 216
TrueHeading reading, 212
UI, 211
compass_Calibrate event fires, 215
ConstructGraphicsObjectsForDrawingCube method, 563
Containers
supported for video and audio media, 446
Content and typography, 56
ContentPanel Grid control, 279, 290
ContentPanel Grid object, 164
Coordinate systems, 556
CopyPixels, 441
CreateCubeObject method, 559, 561, 563
CreateDataCollections method, 457
CreateLookAt parameters, 565
CreatePerspectiveFieldOfView method, 565
CredentialsProvider key, 205
Cubes, building with triangles, 558
Cubic Out Easing Function, 136
Current3DAcceleration property, 199, 202
currentLeftRight float value, 573
CurrentValueChanged event, 223
CustomCamera.xaml.cs, 227, 228, 230
Data
securely encrypting, 433
Data binding, Expression Blend 4
control templates, 126
button customization, 129, 130
edit additional templates, 126
edit template menu item, 126
ListBox customization, 127–129
element data binding, 106
binding markup extension, 108
dialog creation, 108
Slider control, 107
object data binding, 108
CustomerList Field, 110
data source dialog creation, 109, 110
Data-bound ListBox, 112
dialog creation, 108
ItemTemplate, 114
TextBlock, 114
XAML changes, 113
XML data binding, 114
XmlReader, 117
Data persistence
Asynchronous programming (see Asynchronous programming)
bing maps control (see Bing Maps control)
emulator file system, 242
frame rate counters, 235
Isolated Explorer tool, 241
IsoStore File IO
data saving, 238
Dispose method, 239
loading data, 238
UI, 235
local database (see Local Database)
namespaces, 234
object persistence
Load and SaveData methods, 240
sockets, 289
tool functionality, 241
webbrowser control (see WebBrowser control)
DataStore class, 288
3D axis, 559
3D coordinate systems, 556, 557
Deactivated event, 544
DeadReckoner class, 217
Debugging
music+videos hub application, 466
DebugMemoryInfo_Tick event, 175
Delta, 184
Delta2, 184
DeltaManipulation values, 196
DependencyObject class, 92
DesiredAccuracy class member, 204
DeviceAcceleration, 225
DeviceRotationRate, 225
3D game development with, 554, 582
3D coordinate systems, 556, 557
3D object management, 573, 576
Game class, 577
rendering primitives, 557, 564
from triangles to objects, 558, 560
Dictionary class, 234
Digital Rights Management(DRM), 452
DispatcherTimer object, 175
Dispose method, 238
3D origins, 556
DoubleAnimation object, 131
DownlaodAppHubFeed() method, 426
DownloadProgressChanged event, 450
Downloads
with MediaElement control, 447, 450
with MediaPlayerLauncher task, 447
MediaStreamSource method, 450
DrawableGameComponent class, 575
DrawCubePrimitive method, 564, 566
3D scenes, 558
DualTextureEffect class, 562
Emulator
video and audio media in, 446
Encryption services, 433
securely encrypting data, 433
SSL, 433
e.ManipulationContainer, 194
e.ManipulationOrigin, 194
EnvironmentMapEffect class, 562
e.OriginalSource, 194
EventToCommand behavior, 419, 420
EventToCommand properties, 420
explosions.png file, 546
Expression Blend 4 phobe tour
HelloSilverlight application, 19
letters description, 20
technical designer, 18
Windows Presentation Foundation, 18
farPlaneDistance parameter, 565
Fast Application Switching (FAS), 302
feedListBox class, 421
feedListBox.ItemsSource property, 421, 422
feedListBox.ItemTemplate, 422
fieldOfView parameter, 565
FingerPaintingPageTouchEvents, 178
_fixTimer, 217
Flick GestureType, 186
Game class, 577
Game.Components collection, 546
Game concent
dispose() method, 27
draw() methods, 27
elapsedgame time, 27
fixed-step, 28
initialize() method, 27
loadContent() method, 27
totalgame time, 27
variable-step, 28
implement
2D plane vectors, 31
AlienRec.Intersects, 36
check for collisions, 35
check screen boundary collision, 35
contentmanager object, 29
draw method, 33
drawing emulator, 29
emulator image, 29
HelloXNA project, 28
initialize objects, 33
modified game1.cs, 36
moving sprites, 34
object via vector addition, 32
objects position tracking, 33
portrait 2D cartisian plane, 30
private void CheckForCollisions, 35
pseudo code, update method, 32
quick discussion, 30
speed and position calculations, 32
speed applying, 32
sprite initial oosition, 34
spritePatch and SpriteBatch, 29
Texture2D image, 30
update() and draw() methods, 29
XNA framework, 39
Game content
graphics artist, 24
Hello XNAContent project files, 23
XNA Game Studio ships, 24
Game1.DrawCubePrimitive method, 563
Game1.Draw method, 564
Game1.Initialize method, 566
Game.LoadContent() method, 559, 561
Game state
GameObject3D class, 573, 575, 576
GameplayScreen object, 541
GameplayScreen.LoadAlienShooterState method, 542
GameplayScreen.LoadContent method, 542
gameTime.TotalGameTime.TotalSeconds value, 568
Generic List collection, 575
GeoCoordinateWatcher class members, 204
GeoCoordinateWatcher variable, 205
gestureInfo variable, 184
GestureListener control, 191, 196
Gestures, multi-touch
definition, 182
Pinch and Stretch, 183
with Silverlight
Canvas panel, 191
EventArgs, 193
game loop Update method, 190
GestureListener events, 191, 192
GestureService/GestureListener components, 191
GesturesTouchPanelSilverlight project, 190
MainPage() constructor, 190
MouseLeftButtonDown and MouseButtonUp, 190
XNA Framework UI, 193
single-touch gestures, 182–183
with XNA Framework libraries
Clamp method, 188
Draw() method, 184
GameObject.cs code file, 186–188
GestureSample class, 184
GestureSample members, 185
GesturesTouchPanelXNA project, 185
GesturesTouchPanelXNAContent Content project, 183
GestureType.FreeDrag gesture, 190
GestureType.Hold gesture, 190
GestureType.Pinch gesture, 190
Initialize() method, 183
LoadContent() method, 183
Microsoft.Xna.Framework.Input.Touch namespace, 183
negative scale factor, 190
Pinch gesture, 185
positive scale factor, 190
ProcessTouchInput() method, 188
SpriteFont object, 183
switch statement, 189
TouchPanel static class, 183
UI, 186
GestureSample field, 577
GesturesSilverlightToolkit project, 191, 192
GesturesTouchPanelXNA project, 183, 202
GestureType.Flick, 190
GestureType.FreeDrag gesture, 190
GestureType.Hold gesture, 190
GestureType.Pinch gesture, 190
GetAlbumArt method, 444
GetImage method, 458
GetPosition(UIElement relativeTo), 164
GetPreviewBuffer method, 227
GetPrimaryTouchPoint member, 178
GetStylusPoints method, 164
GetTouchPoints member, 178
GetVendors method, 280
graphicsDevice class, 564
graphicsDevice.DrawIndexedPrimitives method, 564
Graphics processor unit(GPU), 557
Gravity, 226
Gyroscope sensor
3-dimentional axis, 222
Line objects, 223
Motion class, 222
MSDN documentation, 222
UI, 223
visualization, 224
walkthrough, 222
Windows Phone ecosystem, 221
gyroscope_CurrentValueChanged event handler, 223
HandleInput method, 577
HaveArt property, 444
HeadingAccuracy, 213
heroShip.statusBoard GameStatus object, 542
High Level Shader Language(HLSL) coding, 562
"History" section
of music+videos hub application, 470, 471
Hold GestureType, 186
HorizontalAlignment, 426
HorizontalScrollBarVisibility property, 177
HtmlToImageUriConverter, 431
Hub application
debugging, 466
testing, 466
HubType attribute, 466
IDictionary<string, object>, 299
IDisposable interface, 221
ImageNameConverter, 459
object, 432
Image.Source property, 230, 444
ImageSourceConverter, 458
IndeterminateProperty, 426
Indices List object, 561
InDrawingMode variable, 179
INotifyPropertyChanged interface, 221
Input handling, 153
accelerometer sensor (see Accelerometer)
camera sensor (see Camera sensor)
compass and gyroscope, 153
compass sensor (see Compass sensor)
gyroscope sensor
3-dimentional axis, 222
Line objects, 223
Motion class, 222
MSDN documentation, 222
UI, 223
visualization, 224
walkthrough, 222
Windows Phone ecosystem, 221
keyboard
physical, 154
SIP, 154
location sensor
Bing Maps Map object, 204
CredentialsProvider key, 205
definition, 203
GestureListener_DragDelta event handler code, 206
LocationSensorSilverlight, 204
Location Service accuracy, 205–206
LocationService, 204
MainPage() constructor, 204
Starbucks, 203
status panel, 206
Wi-Fi, 204
Windows Phone emulator location simulation, 206–207
microphone
App.xaml.cs, 208
16-bit raw PCM, 207
MainPage.xaml.cs code file, 208–210
with Silverlight, 208
SoundEffect object, 207
.wmv file format, 207
motion sensor Microsoft, 153
OS 7.1, 153
Silverlight and XNA, 153
touch input (see Touch input)
InputScope
default SIP keyboard, 155
Search, Password, and TelephoneNumber, 157
text SIP keyboard with word suggestion, 156
TextBox control, 155
InvokeScript method, 261
IsolatedStorage classes, 234
IsolatedStorageFile static class, 234
ItemsPanelTemplate object, 167
ItemsSource property, 422
IValueConverter, 431
data, 444
interface, 415
JavaScript method, 261
Keyboard
physical, 154
programming
keyboard events, 160
SIP, 154
KeyDown events, 160
KeyEventArgs class, 160
KeyUp events, 160
Knobs, 562
Launchers and choosers, 446
Launching event, 544
LayoutRoot Grid object, 240
LazyLoadViewModel.cs class, 428
Left-handed coordinate system, 556
List<Artist> collections, 444
List<Picture> Pictures collection, 458
ListBox level, 417
ListBox_SelectionChanged method, 457
ListBoxItem, 419
ListPicker, 431
Local database, 242
application updates, 255
architecture, 242
sample, 243
copying, isolated storage, 251–254
pre-populated database sample, 250
read-only access, 251
RecipeDB, 249
Recipes.sdf in Visual Studio, 250
System.ComponentModel, 243
System.Data.Linq Mapping, 243
System.Data.Linq namespace, 243
security and connection string options, 255
LowProfileImageLoader, 427, 432
MagnetometerReading, 213
MainMenuScreen class, 540, 543
MainMenuScreen() method, 540
MainPage constructor, 469
MainPage.OnNavigatedTo event, 471
MainPanoramaPage.xaml.cs file, 452
MainViewModel Pages collection, 420
MainViewModel.Pictures property, 457
ManipulationCompleted, 194
ManipulationDelta, 194
ManipulationsDelta event, 195–196
Manipulation events, 177
ManipulationStarted, 194
MarketplaceDetailsTask, 454
MarketplaceSearchTask, 453
MathHelper class, 565
MathHelper.PiOver2 radians, 190
MathHelper static class, 188
Matrix class, 565
Matrix type, 564
Matrix.CreateFromYawPitchRoll(yaw, pitch, roll) method, 567
MediaElement
acquiring media withEND, 450
progressive video with, 447, 450
MediaElement.DownloadProgress property, 450
MediaElement.DownloadProgressChanged event, 450
MediaHistory class, 469
MediaHistory.Instance.WriteAcquiredItem method, 470
MediaHistory.Instance.WriteRecentPlay() method, 471
MediaHistoryItem class, 469, 470
MediaHistoryItem.ImageStream property, 470
MediaHistoryItem.PlayerContext, 470
MediaHistoryItem.PlayerContext Dictionary object, 470
MediaHistoryItem.Title, 470
MediaLibrary.Albums collection, 444
MediaLibrary.GetPictureFromToken method, 457
MediaLibrary object, 453
MediaLibrary.SavePictureToCameraRoll API, 227
MediaOpened event, 450
MediaPlayerLauncher, 446
MediaPlayerLauncher task
progressive video with, 447
MediaPlayer object, 453
MediaPlayer.Play() method, 445
MediaStateChanged event, 453
MediaStreamSource method, 450
Microsoft.Devices.MediaHistory class, 465
Microsoft.Devices.MediaHistoryItem class, 465
Microsoft Permissive License (MS-PL) license, 481
Microsoft.Phone.dll assembly, 544
Microsoft.Phone.Shell statement, 544
Microsoft.Phone.Shell.ShellTileSchedule API, 615
Microsoft Push Notification Services(MPNS), 611, 617
raw, 612
updating application tile without, 615, 617
Microsoft.Xna.Framework.Audio, 207
Microsoft.Xna.Framework.Media namespace, 441
ModelBone class, 574
Model class, 574
Model.CopyAbsoluteBoneTransformsTo method, 574
ModelMesh class, 574
Model-View-Controller (MVC), 349
Model-View-ViewModel (MVVM), 248, 349
architecture, 350
command and commandparameter, 359
DataContractSerializer class, 365
GalaSoft toolkit, 360
Helper SDK, 360
LightSample
commanding and relaycommand, 370–373
DialogMessage class, 374
GenericMessage<T> class, 373
installation,testing, 361
MessageBase class, 373
NotificationMessageAction class, 374
NotificationMessage class, 373
NotificationMessageAction<T> class, 374
NotificationMessage<T> class, 374
PropertyChangedMessage<T> class, 374
VendorsViewModel, 367
Windows Phone project templates, 361
MainPage.xaml file, 358
models folder, 350
vendor model class code file, 351, 352
VendorsView.xaml, 358
VendorViewModel class, 352–357
VendorViewModelDataSource, 358
VendorViewModel ICommand, 359
VendorViewModel.Vendors, 358
ViewModelLocator class, 361, 363
WebClient class, 366
Mouse and Touch events, 177
MouseEnter event, 161
MouseEventsTextBox object, 163
MouseLeave event, 161
MouseLeftButtonDown, 161
MouseLeftButtonUp, 161
MouseMove event, 178
MovementThreshold class member, 204
Moving
Multi-point touch input
programming with gestures (see Gestures, multi-touch)
programming with manipulation events
characteristics, 193
CompositeTransform, 196
EventArgs class members, 194
GestureListener control, 196
GesturesTouchPanelXNA project, 194
ManipulationsDelta event, 195–196
test app UI, 195
UIElement base class, 194
Windows Presentation Foundation 4.0, 193
raw touch
ContentPanel Grid, 180
MultiTouchwithRawTouch MainPage.xaml.cs code file, 180–182
MultiTouchwithRawTouch project, 179
with Touch.FrameReported, 178–179
TouchPoint class, 179
Silverlight- and XNA Framework-based applications, 177
Music+videos hub application, 464, 465
debugging, 466
implementing playback, 471, 472
updating, "History" section, 470, 471
updating, "New" section, 469, 470
updating, "Now playing" section, 470
testing, 466
MVVM. See Model-View-ViewModel
NavigateToPageCommand property, 419, 420
NavigateToPageCommand RelayCommand<T>, 419
NavigateToString method, 423, 424
NavigationContext.QueryString property, 455
nearPlaneDistance parameter, 565
newGameMenuEntrySelected event handler, 540
"New" section
of music+videos hub application, 469, 470
Normal vectors, 559
Notifications
push
NowPlayingParisTile.jpg video, 465
"Now playing" section, 470
Objects, for 3D rendering, 558, 560
ObservableCollection, 230
OnActiviation event, 544
OnDeactivation event, 544
OnEnabledChanged event, 572
OnHtmlPropChanged method, 424
OnNavigatedTo event, 455, 468, 471
OnNavigatedTo method, 470
Orientation aware application
content grid and application bar code, 403
easing functions selector, 405
FluidLayout, 406
LandscapeRight, 406
LandscapeRight orientation, 407, 408
MainViewModel class, 402
MediaElement control, 402
object and timeline window, 407
PortraitOrLandscape, 404
VSM, one and two visual states, 405
VSMVideoPlayer, 402
VSMVideoPlayer and states, 402
OriginalSource, 164
OriginalSource property, 160
Page navigation, visual studio 2010, 81
Onnavigated overrides, 84
PageItem/ItemTemplate level, 417
PageItemViewModel
constructor, 419
PageTitle property, 419
Painting functionality expansion
ColorListBox, 170
Expression Blend, 169
FingerPaintingPageMouseEvents.xaml code file, 170–172
FingerPaintingPageMouseEvents.xaml.cs code file, 172–175
memory-tracking code, 175
UI set up, 169
Panorama control, 442
PanoramaItem panels, 442
ParisVideoTile.jpg video, 465
Particle system
in AlienShooter game, 545, 554
adding to project, 546
implementing in game, 546, 554
ParticleSystem
class, 546
folder, 546
PasswordBox class, 157
Pencil size, 169
PerformanceProgressBar, 432
Permission class member, 204
PhoneApplicationPage constructor, 419
PhoneApplicationPage_Loaded event, 178
PhoneApplicationPage_Loaded method, 168, 175
PhoneApplicationService class, 544
PhoneApplicationService.Current.StartupMode property, 544
PhoneApplicationService.Current.State Dictionary object, 544
Photo Extras application, 454, 464
retrieving selected photo, 455, 464
Photos, retrieving selected, 455, 464
Physical keyboard, 154
PictureEditingViewModel class, 455, 457, 462, 463
PictureEditingViewModel.PictureToEdit property, 455
Picture.GetImage() method, 458
Picture.GetThumbnail, 458
Picture.Name property, 459
Pinch gestures, 196
Pitch member, 568
PlatformKeyCode, 160
Playback
implementing
in music+videos hub application, 471, 472
playGameMenuEntry object, 540
Point object, 188
Position class member, 184, 204
Position2, 184
PositionChanged class member, 204
PressureFactor values, 179
ProcessInput method, 189
advanced data binding, 415, 433
encryption services, 433
securely encrypting data, 433
SSL, 433
raw, 612
updating application tile without, 615, 617
music+videos hub application, 464, 465
debugging, 466
testing, 466
Photo Extras application, 454, 464
retrieving selected photo, 455, 464
video and audio media, 446, 454
DRM, 452
in emulator, 446
progressive download video, 446, 450
supported codecs and containers, 446
Progress,showing via data binding, 424, 427
Progressive download video, 446, 450
with MediaElement control, 447, 450
with MediaPlayerLauncher task, 447
MediaStreamSource method, 450
Projection property, 566
Push notifications
raw, 612
updating application tile without, 615, 617
QueryString Dictionary object, 471
QueryString object, 455
QWERTY keyboard, 154
Raw push notifications, 612
ReceiveFeedData method, 421
Rectangle.Contains method, 188
Rectangle_MouseMove event, 178
Rectangle object, 95, 165, 188
RectStoryboard animation, 135
Rendering 3D primitives, 557, 564
from triangles to objects, 558, 560
ReportProgress method, 267
ResetPosition method, 573
RestDataServicesODataPage.xaml, 279
RetrieveXmlCompleted method, 264
ReuseBuffer, 232
Rfc2898DeriveBytes class, 438
Rich Text Format (RTF), 408
Rich TextBox control, 408
Right-handed coordinate system, 556
Roll member, 568
RotationRate property, 223
SaveAlienShooterState method, 541, 545
SaveImageAsCommand (SaveImageAs()) commands, 463
Scalable Vector Graphics (SVG), 95
screenManager object, 546
SDK Microsoft advertising
adding controls, 410
Adcontrol,Silverlight, 410, 411
Adcontrol,XNA Framework, 412
AdControlError, 410
AdDisengaged, 410
AdEngaged, 410
AnimateAdControl.Begin(), 412
AnimateAdControl Storyboard, 411
NewAd, 410
types and test values, 410
getting started, 409
Secure Sockets Layer(SSL), 433
Security
encryption services, 433
securely encrypting data, 433
SSL, 433
SelectedIndex, 168
SensorReadingEventArgs, 223, 225
Set background color menu item, 169
SetPictureAndNavigate method, 457
ShellTileSchedule, 616
Sideways pointing vector, 559
Silverlight composite rendering
background graphics infrastructure classes
assemblies, 530
RichBackgroundBasePage class, 532–534
RichBackgroundRenderer class, 530–532
content loading and initialization, 521, 522
content projects creation, 535
game loop, 521
Game1.Initialize method, 522
GamePage.xaml, 522
GamePage.xaml.cs OnUpdate and OnDraw event handlers, 523, 524
MainPage.xaml, 522
modified RichBackgroundRenderer class, 536, 537
page navigation, 530
project modifications, 534, 535
retained mode, 520
shared graphics project templates, 520
SharedGraphicsBasic.OnNavigateTo method, 522
SharedGraphicsDeviceManager Class, 521
UIElementRender class
GestureStatus TextBlock, 529
GestureStatus.Text, 526
grid control, 529
MouseLeftButtonDown event, 527
OnNavigatedTo method, 525, 526
TextBlock, 528
UIElementRendererDemo, 524
UIElementRenderer.Render, 526
UIElementRenderer Xaml, 524, 525
UIElementRender texture, 520
update and draw events, 523
Silverlight Media Framework(SMF), 451
SinglePointTouch project, 175
SkinnedEffect class, 562
slsvcutil.exe, 275
smoke.bmp file, 546
SmoothStreamingMediaElement control, 96, 451
Sockets, 289
Soft input panel (SIP) keyboard, 154
spaceship.fbx file, 569
SpriteFont class
AppHub education catalog, fonts, 494
FontName element, 495
FontsSampleContent project, 494
SpriteBatch.Draw method, 496
stretching fonts, 496
XML file format, 495
spriteFontSegoeUIMono, 183
StackPanel, 167
StackPanel object, 98
Start class member, 204
StaticResource extension, 90
Status class member, 204
StatusChanged class member, 204
StatusStackPanel container, 267
StickMan GameObject instance, 202
StickMan Image tag, 196
StickMan's Rotation property, 190
Stop class member, 204
SMF, 451
SmoothStreamingMediaElement control, 451
StreamReader object, 238
Stretch property, 177
StylusDevice, 164
StylusPoint.PressureFactor property, 164
StylusPointsCollection, 164
Supported networks and service protocols
HttpWebRequest and WebClient, 271
Plain Old REST+JSON, 280
AdventureWorksRestJSON Service, 281, 282
IAdventureWorksRestJSON Interface Code File, 280
Web Services, 271
AdventureWorks.svc.cs Class Implementation, 273, 274
AdventureWorksModel EF model, 272
Service reference menu, 275
WebServicePage.xaml page, 276, 277
Windows Communication Foundation, 271
SuspendMousePromotionUntilTouchUp, 178
SyndicatedServicesViewModel.cs code file, 424
System.IO.IsolatedStorage.IsolatedStorageFileStream), 450
System.IO.IsolatedStorage namespace, 234
System.IO.Stream object, 466, 469
System.IO.StreamWriter object, 541
System.Windows.Input.Touch, 178
System.Windows.Media.Colors, 166
Tap Gesture, 577
tdfVideoTile.jpg video, 465
testing
music+videos hub application, 466
TestTextBlockStyle, 90
TextBlock, 423
TextBlock data, 459
this.ApplicationLifetimeObjects, 208
Tile push notifications, 613, 614
timer_Tick event, 224
Timestamp, 178, 184, 213, 223, 226
Toast push notifications, 612, 613
Tombstone support
in AlienShooter game, 544, 545
Touch color, 169
Touch input
capacitive touch, 160
multi-point touch (see Multi-point touch input)
raw touch with mouse events
GetStylusPoints method, 164
MouseEventArgs class, 164
painting functionality expansion (see Painting functionality expansion)
PressureFactor, 164
StylusPointsCollection, 164
UI set up (see User interface)
Silverlight, 161
single-point touch
TextBox and TextBlock controls, 161
WMAppManifest.xml configuration file, 162–163
XNA Framework, 161
TouchDevice, 179
TouchFrameEventArgs class, 178
Touch_FrameReported event handler, 179
TouchPanel.IsGestureAvailable, 183
TouchPanel.ReadGesture, 183
TouchPoint class, 179
TrackMemoryTimer, 175
Transitions
toolkit page
backward and forward, 396
datepickerpage, 395
navigation configurations, service page, 397
navigationIntransition, 395
navigationouttransition, 395
navigationouttransition.backward, 398
sample project, 395
sample transitions, 397
timepickerpage, 395
transitionservice, 396
UI elements, 399
XAML intellisense, 396
visual state nanager
orientation aware application (see Orientation aware application)
Translation, 196
Triangles
building cubes with, 558
to objects
triangleSide1 vector, 561
triangleSide2 vector, 561
TrueHeadingCompass, 213
TryStart class member, 204
UIElement, 160
Up Vector3 value, 569
Update method, 558
UpdateMusicPlusVideoAppHistory() method, 470
UpdateMusicPlusVideoAppNowPlaying() method, 470
Uri property, 419
User interface (UI)
ApplicationBar code, 164
Canvas object, 164
ColorsClass code file, 166–167
finger painting, 166
MouseMove event, 165
Rectangle_MouseMove event handler, 165
StylusPoint class, 164
StylusPointsCollection, 165
TitlePanel and ContentPanel, 164–165
User interface development, 53
animation, 130
in code, 138
keyframe editor, 135
KeySpline easing customization, 136
KeySpline interpolation, 137
Objects and Timeline tool window, 133
RectStoryboard Code Fragment, 136, 137
application layout
correct title position, 141
dynamic background image, 143
Panorama control, 138, 139, 140
designing, 54
application icons, 58
designer and developer Mechanics, 59–62, 64–66
UI Design and Interaction Guide, 56, 57
Expression Blend 4, 97
databinding (see Data binding, Expression Blend 4)
system, 97
NET framework
namespaces, 85
XAML, 86 (see also XAML, Visual Studio)
new user controls demonstration, 147–151
new user experience controls, 146
Pivot control
background image, 145
SelectedItem property, 145
Title Customization, 145
UI Base Classes
DependencyObject, 92
FrameworkElement class, 92
graphics primitives, 92, 94, 96
UI performance, 54
visual studio 2010
Application_UnhandledException event, 77, 78
application-wide resources, 73
App.xaml file, 70
BuiltInControls project, 68
ConfigurationSettingsService, 74–76
Default App() Constructor, 76, 77
graphic files, 68
non-visual Application object, 68
orientation, 79
SystemTray, 79
WMAppManifest.xml File, 69, 70
XAML, 53
using System.IO.IsolatedStorage statement, 540
Vector2, 184
Vector3 property, 199
Vector3.Cross method, 559
Vector-based graphics, 92
vectors
normal, 559
sideways pointing, 559
Vendor class, 288
VendorsListBox control, 285
VendorsView.xaml file, 368
Video and audio media, 446, 454
DRM, 452
in emulator, 446
progressive download video, 446, 450
supported codecs and containers, 446
Video player, creating
acquiring media with MediaElementEND, 450
videoHub key, 471
VideoPlayer.Play, 471
VideoPlayer_MediaOpened event, 470, 471
VideoPlayerPage.xaml, 467, 468, 471
View property, 566
Visibility.Collapsed, 170
Visual studio 2010 tour
A description, 15
B discription, 15
C description, 15
Click event, 16
creation, 13
D description, 15
document outline tool window, 15
E description, 15
event handler, 16
F description, 15
G description, 15
H description, 15
HelloSilverlight application, 17
I description, 15
IntelliSense pop-up, 17
J description, 15
K description, 15
width control, 18
windows phone design-time, 14
XAML IntelliSense, 17
WebBrowser control, 177, 423, 424
WebBrowser control, 255
WebBrowser control, 255
class members, 255
HTML5 Support, 262
sample
WebBrowserTask, 453
Windows Phone
alarms and reminders
AddNotificationGrid.visibility, 342
add scheduled notification, 340
alarm class, 336
CreateTextButton_MouseLeftButtonDown event handler, 340, 341
deleteNotificationButton_Click, 339
e.Cancel, 342
ListBox control, 338
MainPage.xaml.cs, 337
Microsoft.Phone.Scheduler namespace, 337
push notification toast functionality, 336
RefreshScheduledNotificationsList, 338
reminder class, 337
ReminderDeepLinkPage.xaml, 337
scheduled notifications, 336
ScheduledActionService class, 337
application execution model, 316, 317
autocompletebox control, 377, 379
choosers, 316
EmailAddressChooserTask, 330
GameInviteTask, 331
PhoneNumberChooserTask, 330
PhotoChooserTask, 331
SaveEmailAddressTask, 332
SavePhoneNumberTask, 332
cloud settings, 306
contacts and calendar
add scheduled notification, 345, 346
background, 343
ContactDetails.xaml.cs OnNavigatedTo override processes, 347
ContactsDetails.xaml page, 346, 347
contactsFilter variable, 345
contactsListBox and calendarListbox, 344
contactsListBox.SelectionChanged method, 347
contacts list, sorted, 345
ContactsPage.xaml and AppointmentsPage.xaml, 344
filter string, 345
ProgressBar control, 344
ProgressBar.Visibility property, 344
search code, 344
SelectionChanged event handler, 347
StorageKind enumeration, 343
TCP/IP services, 343
TextBlock controls, 344
WMAppManifest.xml file, 344
ContextMenu Control, 379
DebugMemoryInfo timer event, 307
DeviceExtendedProperties, 306, 307
DeviceUniqueID, 306
hardware capabilities, 7
installation
phone toolkit sample main menu, 377
Silverlight toolkite, description, 375–376
WrapPanel control, 376
BingMapsDirectionsTask, 318, 319
BingMapsTask, 320
ConnectionSettingsTask, 321
MarketplaceDetailTask, 323, 324
MarketplaceHubTask, 322
MarketplaceReviewTask, 324
MarketplaceSearchTask, 322, 323
MediaPlayerLauncher, 324
PhoneCallTask, 325
SearchTask, 325
ShareLinkTask, 325
ShareStatusTask, 325
SMSComposeTask, 326
WebBrowserTask, 326
ListPicker control, 381
LongListSelector control
header and footer, 388
marketplace status and trial mode, 314, 315
memory usage, 308
Microsoft.Phone.Tasks namespace, 315
mobile market, 3
non-microsoft developers, 4
phone design philosophy
integrated experiences and smart design, 4
pictures hub Panorama experience, 6
Pivot experience, 7
Pivot Outlook, 6
start screens, 5
user interface, 6
sandbox, 315
smartphone growth and Nokia partnership, 2, 3
socket network information, 310, 312
software and capabilities, 2
software capabilities
application platform, 9
application programming frameworks, 10
Silverlight and XNA Frameworks, 9
Visual Studio 2010 and Expression Blend 4 tools, 9
XAML, 10
XNA framework applications, 10
string-based properties, 305
system environment information, 308
system tray, 313
ToggleSwitch control, 382, 383
user information, 305
windows mobile, 1
WPConnect tool, 317
ZuneHD, 1
Windows Phone 7.5
consumer features, 11
developer features, 11
developer tools, 12
phone design philosophy
built-in hubs, 5
silverlight framework, 7
silverlight tools and framework
Expression Blend 4 phone tour (see Epression Blend 4 phone tour)
game content (see Game content)
hello for windows phone, 13
Hello XNA, 22
silverlight for windows phone, 12
visual studio 2010 tour (see Visual studio 2010 tour)
XNA Game Studio, 23
XNA Game Studio and Framework (see XNA Game Studio and Framework)
Windows phone marketplace
app hub registration, 40
application and game updates, 49
app list, 43
beta testers limitation, 51
beta testing, 41
deploy pplication, 50
developer registration tool, 50
device
application, 46
details page, applications, 47
marketplace hub, 46
self-explanatory way, 47
Xbox LIVE Hub, 48
device connectivity error codes, 51
end users connection, 49
try before you buy, 49
users via live tiles, 49
enterprise applications, 52
error code and explanation, 51
limiting distribution, 50
marketing matters, 43
PC
installation, 45
limited distribution, 46
via Microsoft ActiveSync/Windows Mobile Device Center, 45
Zune client, 45
search, browse, and discover applications, 49
supported business models, 48
targeted application distribution, 41
test kit, 41
web marketplace, 44
Windows Presentation Foundation (WPF), 349
WMAppManifest.xml, 470
WorkingWithMediaLibrary project, 452
WorkingWtihMedia project, 446
world Matrix object, 567
WriteableBitmap class, 177, 441, 462
WriteableBitmap.Render method, 463
WritePixels, 441
XamlMagCompass, 212
XAML, Visual Studio, 86
Expression Blend 4, 86
.NET class importing, 87
programming
Binding markup extension, 91
Button.Content property, 87
element data binding, 91
markup extensions, 88
System.Object, 87
TextBox, 91
TypeConverter objects, 88
XamlBasics MainPage.xaml File, 88, 89
Xml Application Markup Language (XAML), 10
XNAAsyncDispatcher class, 208
XNA3DPrimitives project, 558, 564
XNA framework, 481, 539, 582, 583
AlienShooter (see AlienShooter)
tombstone support in, 544, 545
3D game development with, 554, 582
Camera object, 564, 566, 567, 569, 573
3D coordinate systems, 556, 557
3D object management, 573, 576
Game class, 577
rendering primitives, 557, 564
Microsoft's AppHub website, 481
nonvisual APIs, 481
Silverlight composite rendering (see Silverlight composite rendering)
Xbox LIVE gamer services, 482
XNA Game Studio and Framework, 22
Yaw member, 568
YCbCr, 227