microsoft corporation http jeff wilcox name
play

Microsoft Corporation http://www.jeff.wilcox.name/ - PowerPoint PPT Presentation

Microsoft Corporation http://www.jeff.wilcox.name/ 2 3 Multimedia Display Codec acceleration 480x800 QVGA Other resolutions in the future Capacitive


  1. Microsoft Corporation http://www.jeff.wilcox.name/

  2.          2

  3.          3

  4. Multimedia Display Codec acceleration 480x800 QVGA Other resolutions in the future Capacitive touch Memory 4+ contact points 256MB RAM or more 8GB Flash or more Sensors A-GPS, Accelerometer, GPU Compass, Light DirectX 9 acceleration Camera 5+ megapixels CPU ARMv7 Hardware buttons Start, Search, Back 4

  5.         5

  6. 6

  7.        8

  8.                               9

  9.        <Grid> <TextBox Text =“Hello World" TextChanged =“ MyMessageChangedHandler"/> </Grid> 10

  10.        11

  11.      <Style TargetType="TextBlock" x:Key="SubHeadingText"> <Setter Property="FontSize ” Value="42" /> <Setter Property=" Foreground“ Value="Blue" /> </Style> <TextBlock Text =“What’s up?“ Style =“{ StaticResource SubHeadingText }“/> 13

  12.      14

  13.       <TextBlock Text =“{Binding Name}” Foreground =“{ Binding Name, Converter={StaticResource MyPersonForegroundBrushSelector }}” /> 15

  14.   link    // Bad for performance NotifyPropertyChanged(()=> FullName); // Good NotifyPropertyChanged (“ FullName ”); // Great NotifyPropertyChanged(PropertyFullName); 16

  15.          17

  16. 18

  17.         19

  18.                  20

  19.           21

  20.         22

  21. 24

  22.      link 25

  23.        26

  24. <ListBox.ItemTemplate> <DataTemplate> <StackPanel> <StackPanel Orientation="Horizontal"> <Image Source="{Binding PicSource}" Width="{Binding ApproxWidth}"/> <controls:MyPresenceControl User="{Binding}" OnlineText="{Binding ElementName=Resources, Path=UserOnline, Conve rter={StaticResource CurrentCultureConverter}}"/> <TextBlock Text="{Binding Name}" Foreground="{Binding Name, Converter={StaticResource MyNameForegro undConverter}, ConverterParameter='Red,Blue'}"/> </StackPanel> </StackPanel> </DataTemplate> </ListBox.ItemTemplate> 27

  25.        <ListBox.ItemTemplate> <DataTemplate> <Grid Height="180"> <Grid.ColumnDefinitions> <ColumnDefinition Width="120"/> <ColumnDefinition Width="80"/> <ColumnDefinition/> </Grid.ColumnDefinitions> <Image Source="{Binding PicSource}" Width="110" Height="110"/> <Image Source="{Binding PresencePic}" Width="70" Height="30" Grid.Column="1" Visibility="{Binding PresenceVisible}"/> <!-- clipped for space --> 28

  26.   <ListBox> <ListBox.ItemsPanel> <ItemsPanelTemplate> <StackPanel/> </ItemsPanelTemplate> </ListBox.ItemsPanel> </ListBox> 29

  27. 30

  28. 31

  29.     32

  30.          33

  31.          34

  32.       35

  33.    private void Dispatch(Action action) { // No need for a dispatcher invoke, this will be quicker. if (Dispatcher.CheckAccess()) { action(); } else { Dispatcher.BeginInvoke(action); } } 36

  34.        37

  35. BackgroundWorker bw = new BackgroundWorker(); bw.DoWork += BackgroundWork; bw.RunWorkerCompleted += (x, xe) => { // This is called on the UI thread }; bw.RunWorkerAsync(); private void BackgroundWork(object sender, DoWorkEventArgs e) { // This is where your background magic happens. } 38

  36. 39

  37.   <Grid> <Grid.RowDefinitions> <RowDefinition /> <RowDefinition Height="180"/> </Grid.RowDefinitions> <MediaElement Grid.RowSpan="2" Source="/Intro.wmv" AutoPlay="True" Stretch="UniformToFill"/> <Grid Grid.Row="1" Background="Black" Opacity=".6"> <!-- Put playback controls here --> </Grid> </Grid> 40

  38.   MediaPlayerLauncher mediaPlayerLauncher = new MediaPlayerLauncher(); mediaPlayerLauncher.Media = new Uri (“Intro.wmv”, UriKind.Relative); mediaPlayerLauncher.Location = MediaLocationType.Data; mediaPlayerLauncher.Controls = MediaPlaybackControls.Pause | MediaPlaybackControls.Stop; mediaPlayerLauncher. Show (); 41

  39.       42

  40. 43

  41.     44

  42.     private void hyperlinkButton1_Click( object sender, RoutedEventArgs e) { NavigationService.Navigate( new Uri("/SecondPage.xaml", UriKind.RelativeOrAbsolute) ); } 45

  43.   private void button1_Click( object sender, RoutedEventArgs e) { NavigationService.GoBack(); }    46

  44.  private void passParam_Click(object sender, RoutedEventArgs e) { NavigationService.Navigate(new Uri("/SecondPage.xaml?msg=" + textBox1.Text, UriKind.Relative)); }  protected override void OnNavigatedTo( System.Windows.Navigation.NavigationEventArgs e) { base.OnNavigatedTo(e); string msg = string.Empty; if (NavigationContext.QueryString.TryGetValue("msg", out msg)) textBlock1.Text = msg; } 48

  45.      NavigationService.Navigate( new Uri("/SecondPage.xaml+?Param=value" , UriKind.RelativeOrAbsolute 49

  46. 50

  47. PortraitOrLandscape Portrait      link  52

  48. 53

  49.       54

  50. System T ray and Application Bar    SystemTray.IsVisible = false;    55

  51.   

  52.     new Uri "http://www.bing.com/" "<b>Hello JAOO Conference!</b>" 60

  53.       61

  54.     62

  55. 63

  56.      64

  57. 65

  58. Pivot Panorama         66

  59. 67

  60.      68

  61.     69

  62.       70

  63.       71

  64.      72

  65.        73

  66.   link   74

  67.    var deviceMem=(long)DeviceExtendedProperties.GetValue("DeviceTotalMemory"); var app=(long)DeviceExtendedProperties.GetValue("ApplicationCurrentMemoryUsage"); var appPeak=(long)DeviceExtendedProperties.GetValue("ApplicationPeakMemoryUsage"); var managedMemory = GC.GetTotalMemory(false); 75

  68.  link         76

  69. 77

  70.     78

  71.      79

  72.      80

  73. 81

  74.       82

  75.        83

  76. Not User exits the running User Starts the application (press back application – from the first page) – Launching Event Closing event Closing Launching Running 84

  77.  Press Start Load state User is back where Running  Open toast to continue she left off  Lock screen where she left off Activated Deactivated Tombstoned The application’s (in most process is killed Save state cases) for later use (in most cases)* 85

  78.           86

  79.    State PhoneApplicationPage    91

  80. 92

  81.       93

  82. Launchers Choosers  PhoneCallTask  CameraCaptureTask  SearchTask  EmailAddressChooserTask  SMSComposeTask  PhoneNumberChooserTask  WebBrowserTask  PhotoChooserTask  EmailComposeTask  SaveEmailAddressTask  MarketplaceDetailTask  SavePhoneNumberTask  MarketplaceHubTask  MarketplaceReviewTask  MarketplaceSearchTask  MediaPlayerLauncher 95

  83. 96

  84. // Declare the PhotoChooserTask object with page scope. 98

  85. 102

  86.        103

  87.       104

  88. 105

  89.    http://developer.windowsphone.com/  http://silverlight.codeplex.com/   http://www.jeff.wilcox.name/ jwilcox@microsoft.com 106

Recommend


More recommend