Index

imageA

Accelerometer

coordinate system, 197198

debugging output, 196

3D vector, 196

emulator, 197

magnitude calculation, 197

programming

AccelerometerHelper class, 199202

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

sensor input, 572, 578

simulation, 202203

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

Enemy class, 507, 508

frame rate, 482

game management framework, 486, 487

game structure

AlienShooterSpriteSheet.xml Sprite Sheet XML File, 491

background textures, 493

bitmap fonts, 496, 497

content pipeline, 489

content project, 489

Draw method, 490

GamePlayScreen class, 491

Hero Spaceship, 493

HiDef profile, 494

LoadContent method, 490

MenuScreen class, 497499

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

inherited classes, 505, 506

loadedTexture parameter, 504

properties, 504

ResetGameObject method, 506

screenRect parameter, 504

spriteName parameter, 504

UpdateAnimation method, 506

GameplayScreen

initialization, 516, 517

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

processing input, 509, 511

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

AlienShooter game, 539, 554

loading game state, 539, 544

particle system in, 545, 554

adding to project, 546

implementing in game, 546, 554

saving game state, 539, 544

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

event lifecycle, 297, 298

Fast App Switching (FAS), 296

Lock Screen, 301

managing state, 299301

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, 263266

progress report and cancellation, 266, 268, 270

Attitude value, 225, 226

Audio and video media, 446, 454

audio support, 452, 454

DRM, 452

in emulator, 446

progressive download video, 446, 450

streaming video, 450, 451

supported codecs and containers, 446

imageB

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

Bing Maps control, 177, 290

data binding, 292295

licensing, 290

pushpin object, 291, 292

pushpin object, 292

BitmapImage objects, 230, 444

BoundingEllipse, 211

Buffers, 559, 560

imageC

Camera GameComponent object, 564

Camera object

moving, 569, 573

overview, 564, 566

using in game class, 566, 567

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, 228229

DataTemplate, 230

Dispatch.BeginInvoke marshals, 230

emulator, 229

LayoutRoot Grid object, 227228

ListBox, 229

MainPage.xaml.cs, 229230

MediaLibrary, 227

MSDN documentation, 231

PhotoCamera class, 227

PhotoCamera object, 227

Take Pic Button, 229

ThumbImages, 230

video capture, 231232

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, 22021

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, 218220

sample, 217

SensorFix class, 217218

switch statement, 220

Ellipse object, 211

Expression Blend, 212

functionality, 210, 211

Grid XamlCompass, 211

initialization code, 216

Initialize method, 213

magnetic north, 211, 215

magnetic objects, 210

magnetometer sensor, 210

MainPage.xaml.cs, 214215

Microsoft.Devices.Sensors statement, 212

RotationTransform, 211212

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

3D, 556, 557

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

imageD

Data

binding, advanced, 415, 433

securely encrypting, 433

Data binding, Expression Blend 4

control styling, 120125

control templates, 126

button customization, 129, 130

edit additional templates, 126

edit template menu item, 126

ListBox customization, 127129

Demo Live Data, 104, 106

element data binding, 106

binding markup extension, 108

dialog creation, 108

Opacity value, 106, 107

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

.xaml code file, 112, 113

sample data, 119, 120

XML data binding, 114

LINQ, 115117

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

Dictionary object, 236, 237

Dispose method, 239

loading data, 238

UI, 235

local database (see Local Database)

namespaces, 234

object persistence

AppClass, 239, 241

Load and SaveData methods, 240

sockets, 289

tool functionality, 241

webbrowser control (see WebBrowser control)

DataStore class, 288

DataTemplate, 423, 424

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

GameObject3D class, 573, 575

SceneManager class, 575, 576

Camera object, 564, 566

moving, 569, 573

using in game class, 566, 567

Frustum, definition, 555, 556

Game class, 577

movement of objects, 567, 568

rendering primitives, 557, 564

creating, 557, 558

cube, 560, 562564

and Effect classes, 562, 563

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

progressive video, 446, 450

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

imageE

Effect classes, 562, 563

Ellipse objects, 95, 165, 177

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

imageF

farPlaneDistance parameter, 565

Fast Application Switching (FAS), 302

FeedItem objects, 421, 422

feedListBox class, 421

feedListBox.ItemsSource property, 421, 422

feedListBox.ItemTemplate, 422

fieldOfView parameter, 565

FingerPaintingPageTouchEvents, 178

_fixTimer, 217

Flick GestureType, 186

Frustum, 555, 556

Frustum area, 555, 556

imageG

Game class, 577

Game.Components collection, 546

Game concent

game loop, 24, 27

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

loading, 539, 544

saving, 539, 544

GameObject class, 186, 188

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

mouse events, 190191

MouseLeftButtonDown and MouseButtonUp, 190

XNA Framework UI, 193

single-touch gestures, 182183

with XNA Framework libraries

Clamp method, 188

Draw() method, 184

GameObject.cs code file, 186188

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

StickMan sprite, 188189

switch statement, 189

TouchPanel static class, 183

UI, 186

Update() method, 184, 188

GestureSample field, 577

GesturesSilverlightToolkit project, 191, 192

GesturesTouchPanelXNA project, 183, 202

GestureType, 183, 184

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

readings, 223224

rotational velocity, 221, 222

UI, 223

visualization, 224

walkthrough, 222

Windows Phone ecosystem, 221

gyroscope_CurrentValueChanged event handler, 223

imageH

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

music+videos, 464, 465

assets, 465, 466

debugging, 466

sample project, 466, 472

testing, 466

HubType attribute, 466

imageI

IDictionary<string, object>, 299

IDisposable interface, 221

ImageNameConverter, 459

Images, 440, 441

classes, 440, 441

lazy load, 427, 430

object, 432

Image.Source property, 230, 444

ImageSourceConverter, 458

IndeterminateProperty, 426

Index buffer, 559, 560

indexBuffer object, 560, 563

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

readings, 223224

rotational velocity, 221, 222

UI, 223

visualization, 224

walkthrough, 222

Windows Phone ecosystem, 221

keyboard

physical, 154

programming with, 154160

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, 205206

LocationService, 204

MainPage() constructor, 204

Starbucks, 203

status panel, 206

Wi-Fi, 204

Windows Phone emulator location simulation, 206207

microphone

App.xaml.cs, 208

16-bit raw PCM, 207

MainPage.xaml.cs code file, 208210

with Silverlight, 208

SoundEffect object, 207

.wmv file format, 207

motion sensor, 224226

motion sensor Microsoft, 153

OS 7.1, 153

Silverlight and XNA, 153

touch input (see Touch input)

InputScope

default SIP keyboard, 155

options, 157160

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

ItemTemplate, 167168

IValueConverter, 431

data, 444

interface, 415

imageJ

JavaScript method, 261

imageK

Keyboard

physical, 154

programming

InputScope property, 155160

keyboard events, 160

SIP, 154

KeyDown events, 160

KeyEventArgs class, 160

KeyUp events, 160

Knobs, 562

imageL

Launchers and choosers, 446

Launching event, 544

LayoutRoot Grid object, 240

Lazy load images, 427, 430

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, 251254

pre-populated database sample, 250

read-only access, 251

Recipe class, 244, 246, 247

RecipeDataContext, 247, 248

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

Localization, 479, 586

LowProfileImageLoader, 427, 432

imageM

MagneticHeading, 213, 214

MagnetometerReading, 213

MainMenuScreen class, 540, 543

MainMenuScreen() method, 540

MainPage constructor, 469

MainPage.OnNavigatedTo event, 471

MainPage.xaml, 419, 457, 471

MainPanoramaPage.xaml.cs file, 452

MainViewModel class, 416, 438

MainViewModel Pages collection, 420

MainViewModel.Pictures property, 457

ManipulationCompleted, 194

ManipulationDelta, 194

ManipulationsDelta event, 195196

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

control, 207, 450, 467

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 class, 441, 445

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

Microphone class, 207, 210

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

tile, 613, 614

toast, 612, 613

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, 370373

DialogMessage class, 374

GenericMessage<T> class, 373

installation,testing, 361

MessageBase class, 373

model, 364367

NotificationMessageAction class, 374

NotificationMessage class, 373

NotificationMessageAction<T> class, 374

NotificationMessage<T> class, 374

PropertyChangedMessage<T> class, 374

VendorsView, 368369

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, 352357

VendorViewModelDataSource, 358

VendorViewModel ICommand, 359

VendorViewModel.Vendors, 358

ViewModelLocator class, 361, 363

WebClient class, 366

Motion sensor, 224226

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

camera, 569, 573

objects, 567, 568

Multi-point touch input

controls, 177178

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, 195196

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, 180182

MultiTouchwithRawTouch project, 179

with Touch.FrameReported, 178179

TouchPoint class, 179

Silverlight- and XNA Framework-based applications, 177

Music+videos hub application, 464, 465

assets, 465, 466

debugging, 466

sample project, 466, 472

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

imageN

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

MPNS, 611, 617

NowPlayingParisTile.jpg video, 465

"Now playing" section, 470

imageO

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

xaml.cs code file, 403404

OriginalSource, 164

OriginalSource property, 160

imageP

Page navigation, visual studio 2010, 81

NavigationService, 8184

Onnavigated overrides, 84

PageItem/ItemTemplate level, 417

PageItemViewModel

class, 417, 419

constructor, 419

PageTitle property, 419

PageUri prpperty, 419, 420

Painting functionality expansion

ColorListBox, 170

Expression Blend, 169

FingerPaintingPageMouseEvents.xaml code file, 170172

FingerPaintingPageMouseEvents.xaml.cs code file, 172175

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

Programming model, 415, 479

advanced data binding, 415, 433

lazy load images, 427, 430

showing progress, 424, 427

syndicated services, 421, 424

encryption services, 433

securely encrypting data, 433

SSL, 433

images, 440, 441

classes, 440, 441

localization, 479, 586

MediaLibrary class, 441, 445

MPNS, 611, 617

raw, 612

tile, 613, 614

toast, 612, 613

updating application tile without, 615, 617

music+videos hub application, 464, 465

assets, 465, 466

debugging, 466

sample project, 466, 472

testing, 466

Photo Extras application, 454, 464

retrieving selected photo, 455, 464

video and audio media, 446, 454

audio support, 452, 454

DRM, 452

in emulator, 446

progressive download video, 446, 450

streaming video, 450, 451

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

MPNS, 611, 617

raw, 612

tile, 613, 614

toast, 612, 613

updating application tile without, 615, 617

imageQ

QueryString Dictionary object, 471

QueryString object, 455

QWERTY keyboard, 154

imageR

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

creating, 557, 558

cube example, 560, 562564

and Effect classes, 562, 563

from triangles to objects, 558, 560

ReportProgress method, 267

ResetPosition method, 573

RestDataServicesODataPage.xaml, 279

Resume Game option, 540, 543

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

imageS

SaveAlienShooterState method, 541, 545

SaveImageAsCommand (SaveImageAs()) commands, 463

Scalable Vector Graphics (SVG), 95

SceneManager class, 575, 576

screenManager object, 546

ScrollViewer control, 177178

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, 532534

RichBackgroundRenderer class, 530532

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

Source property, 177, 450

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

Streaming video, 450, 451

SMF, 451

SmoothStreamingMediaElement control, 451

StreamReader object, 238

Stretch property, 177

StylusDevice, 164

StylusPoint class, 164, 179

StylusPoint.PressureFactor property, 164

StylusPointsCollection, 164

Support,audio, 452, 454

Supported networks and service protocols

HttpWebRequest and WebClient, 271

Plain Old REST+JSON, 280

AdventureWorksRestJSON Service, 281, 282

IAdventureWorksRestJSON Interface Code File, 280

REST+OData, 277, 279, 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

Syndicated services, 421, 424

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

imageT

Tap Gesture, 577

tdfVideoTile.jpg video, 465

testing

music+videos hub application, 466

TestTextBlockStyle, 90

TextBlock, 423

TextBlock data, 459

TextBox class, 157, 160

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

Tombstoning, 316, 317

Touch color, 169

Touch input

capacitive touch, 160

multi-point touch (see Multi-point touch input)

raw touch with mouse events

GetStylusPoints method, 164

memory analysis, 175177

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

mouse events demo, 161, 162

MouseEnter event, 163164

TextBox and TextBlock controls, 161

WMAppManifest.xml configuration file, 162163

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

custom, 399401

datepickerpage, 395

depth, 398, 399

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

for 3D rendering, 558, 560

triangleSide1 vector, 561

triangleSide2 vector, 561

TrueHeading, 213, 214

TrueHeadingCompass, 213

TryStart class member, 204

imageU

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, 166167

ColorListBox, 167169

finger painting, 166

MouseMove event, 165

Rectangle_MouseMove event handler, 165

StylusPoint class, 164

StylusPointsCollection, 165

TitlePanel and ContentPanel, 164165

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

Storyboard editor, 133, 134

Storyboard element, 131, 132

application layout

correct title position, 141

dynamic background image, 143

Panorama control, 138, 139, 140

title and theme, 142, 143

designing, 54

application icons, 58

Codename Metro, 55, 56

design templates, 58, 59

designer and developer Mechanics, 5962, 6466

UI Design and Interaction Guide, 56, 57

Expression Blend 4, 97

Blend behaviours, 99101

data binding, 103, 104

databinding (see Data binding, Expression Blend 4)

layout controls, 101103

system, 97

system layout, 98, 99

implicit styles, 151, 152

NET framework

namespaces, 85

XAML, 86 (see also XAML, Visual Studio)

new user controls demonstration, 147151

new user experience controls, 146

Pivot control

background image, 145

vs.Panorama control, 144, 145

SelectedItem property, 145

Title Customization, 145

UI Base Classes

controls, 96, 97

DependencyObject, 92

FrameworkElement class, 92

graphics primitives, 92, 94, 96

UI performance, 54

visual studio 2010

Application Bar, 80, 81

Application_UnhandledException event, 77, 78

application-wide resources, 73

App.xaml.cs code file, 7173

App.xaml file, 70

BuiltInControls project, 68

ConfigurationSettingsService, 7476

Default App() Constructor, 76, 77

graphic files, 68

non-visual Application object, 68

orientation, 79

project templates, 66, 67

SystemTray, 79

WMAppManifest.xml File, 69, 70

XAML, 53

using System.IO.IsolatedStorage statement, 540

imageV

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

Vertex buffer, 558560

vertexBuffer object, 560, 563

Video and audio media, 446, 454

audio support, 452, 454

DRM, 452

in emulator, 446

progressive download video, 446, 450

streaming video, 450, 451

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

imageW

WebBrowser control, 177, 423, 424

WebBrowser control, 255

WebBrowser control, 255

class members, 255

HTML5 Support, 262

sample

animation, 256258

Scripting, 258, 260, 262

WebBrowserTask, 453

WebCam APIs, 231232

Windows Phone

alarms and reminders

AddNotificationGrid.visibility, 342

add scheduled notification, 340

alarm class, 336

CreateTextButton_MouseLeftButtonDown event handler, 340, 341

DataTemplate, 338, 339

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

ANID property, 305, 306

application execution model, 316, 317

autocompletebox control, 377, 379

choosers, 316

AddressChooserTask, 327, 328

CameraCaptureTask, 328, 329

EmailAddressChooserTask, 330

GameInviteTask, 331

PhoneNumberChooserTask, 330

PhotoChooserTask, 331

SaveContactTask, 331, 332

SaveEmailAddressTask, 332

SavePhoneNumberTask, 332

SaveRingToneTask, 333, 334

clipboard, 334, 335

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

DatePicker control, 379, 380

DebugMemoryInfo timer event, 307

DeviceExtendedProperties, 306, 307

DeviceInfo code, 312, 313

DeviceUniqueID, 306

hardware capabilities, 7

HubTile Control, 385387

installation

phone toolkit sample main menu, 377

Silverlight toolkite, description, 375376

WrapPanel control, 376

launchers, 315, 316

BingMapsDirectionsTask, 318, 319

BingMapsTask, 320

ConnectionSettingsTask, 321

EmailComposeTask, 321, 322

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

IsFlatList, 387, 389

via LINQ, 389, 391, 392

marketplace status and trial mode, 314, 315

memory usage, 308

microsoft developers, 3, 4

Microsoft.Phone.Tasks namespace, 315

mobile market, 3

network status, 308310

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

TimePicker controls, 379, 380

ToggleSwitch control, 382, 383

user information, 305

via Code, 392394

windows mobile, 1

WPConnect tool, 317

WrapPanel Control, 383385

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

money making, 42, 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

imageX

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

UI, 90, 91

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)

AlienShooter game, 539, 554

loading game state, 539, 544

particle system in, 545, 554

saving game state, 539, 544

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

Frustum defined, 555, 556

Game class, 577

movement of objects, 567, 568

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

image Y,Z

Yaw member, 568

YCbCr, 227

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset