winphone

来源:互联网 发布:java水晶塔防 编辑:程序博客网 时间:2024/05/22 01:30

1.http://create.msdn.com/zh-CN/

   http://msdn.microsoft.com/zh-cn/windowsphone

   http://mobile.51cto.com/mobile-219051.htm

 

四天玩转 Windows Phone 开发教学视频(英语中字),此视频录制于2010年9月24日左右。作者Bob生成1969-12-7,Robert Theron Taber

在线 7

http://msdn.microsoft.com/zh-cn/windowsphone/hh417917

下载

http://blogs.itecn.net/blogs/haohu/archive/2011/09/14/windows-phone-4.aspx

 

 

 2..Net Framework

(1)第一部分 .Net Runtime也被称为CLR,公共语言运行时:Common Language Runtime。

最初创建.Net Framework Runtime 是在台式机上运行,后来它被压缩并托管到web浏览器内,叫做Silverlight。所以现在如果在浏览器内安装了Silverlight插件,就可以编写运行在浏览器内的应用程序,此时CLR被改叫做CoreCLR,即Silverlight Runtime。

(2)第二部分 Framework Class Library,FCL,或Base Class Library,BCL。它包括创建交互式网站应用程序的ASP.Net,ADO.Net等。

富互联网应用程序RIA: Rich Internet Applications。现在该库又增加了新内容:编写基于手机的Silverlight应用程序。

 

3.开发环境

   cs文件表示C Sharp,它们是代码后置文件,Code-Behind,它在后台支持xaml文件。

   page表示应用程序的一个页面或文档,类似一个html页面。xaml文件用xml来描述。

   .suo文件是一个解决方案用户选项文件,跟踪记录用户对这个解决方案设置的选项。

bin目录下的.pdb文件使模拟器中的代码与环境中的代码一致,以单步调度。

.xap文件是一个silverlight应用程序文件,只有它会被导入到手机中。可以改为 .zip来查看其中的文件,可以看到其中有一些bin目录下已经存在的文件。

 

4.新建xaml文件:新建 \ Windows Phone Portrait Page

   Properties \ WMAppManifest.xml中配置清单。

 

5.watch窗口中的变量的值是红色,表示它是根据最后一个命令而改变的。

  编辑器上行号右侧的黄色竖线表示这些代码还未保存,保存后它将变成绿色。

 

6.右键正在调试的行,选择Set next statement,来重新执行这行。

 

7.IntelliSense 智能感知

   设计器左下角有Document Outline按钮,可显示应用程序内的可视元素的大纲。选择PhoneApplicationPage,在Properties中选择Events选项卡,双击Loaded,在这里写初始化应用程序的代码。

  调用控件的Focus()方法来使其获得焦点。

 
8.C#语法

Encoding.UTF8.GetString(byte[]   buffer)是告诉系统buffer的编码是UTF8。  
byte[]   buf   =   Encoding.UTF8.GetBytes(string   str)是告诉系统返回的buf编码方式是UTF8。

http://topic.csdn.net/t/20050512/19/4002354.html

 

    int 有ToString()方法

    int.Parse();

    String 可以通过 == 操作符和 "" 做值比较。

    String.Format("{0},{1}","msg","msg1");

    String.Format("{0:C}",123.45); 结果是 $123.45,C表示货币格式类型,

    String.Format("{0:N}",1234567890); 结果是 1,234,567,890.00,N表示格式化大数字,D表示正常不加这些逗号,

    String.Format("{0:P}",.127); 结果是 12.70%,P表示百分数,

    String.Format("{0:(###) ###-#####}",1234567890); 结果是 (123) 456-7890,自定义格式化。

 

    System.Text.StringBuider buider=new StringBuider();   下面的蓝色小条,表示vs找到了某个名称空间。同时按下Ctrl和.,会弹出StringBuider的命名空间小菜单,供选择添加到本文件中。

 

 

     System.Environment.NewLine; //枚举

     c#中switch case值可以是字符串,例如 case “1”

     公有方法名大写开头,私有方法名小写开头,属性大写开头。


     DateTime datatime=DateTime.Now;//DateTime有大量对日期时间操作显示的方便使用的方法。

     DateTime datetime=new Datetime();//有多个重载的构造函数。

     DateTime myBirthDay=DateTime.Parse("12/7/1969");

     TimeSpan  timespan=DateTime.Now.Subtract(myBirthDay);//时间间隔

 

     在类中定义属性的句法: public string Name {get; set;};


    在MainPage中,使用ContentGrid.Chidren.Add();添加控件到页面中。

    默认会使用项目名称作为最顶层的父命名空间。

    集合泛型 Generic List:  List<Car> carList=new List<Car>();

    遍历 foreach(Car car in carList)

    创建类并初始化属性的句法:Car car=new Car() {Make="Nissan" ,Model="Altima"};

    创建List并添加成员的句法:List<Car> carList=new List<Car>() {new Car() {Make="Nissan" ,Model="Altima"},new Car() {Make="Nissan" ,Model="Altima"}};

    xaml专注于为silverlight应用程序,定义其设计或布局。

    很多人会选择额外工具 expression blend for windows phone 7 ,而非 visual studio 2010 express for windows phone 7。前者包括xaml生成工具,后者更注重于体验。

    3种布局用的控件:Grid,Canvas,StackPanel。

    x:Name为ContentPanel的Grid是只有一行一列的Grid,它是主控区域。

    HorizontalAlignment,VerticalAlignment布局属性影响着Margin的值,可以在控件上单击边线来控制布局方向。

    Height="80*",表示减去固定值后,剩下的高度分给这这格。

    录控件处在Grid中时,它被添加了一些附加属性,如Grid.Row="1",Grid.Column。可以看出,在Grid中,行列和它们中的内容是分开定义的。

    StackPanel中的控件是垂直布局的。

    Canvas用来绝对定位控件。

    PasswordTextBox,CheckBox控件,RadioButton,ListBox,ScrollViewer,

    bool? b=checkbox.IsChecked;

    添加属性成员时,输入prop ,然后连续两个tab键。

    Image属性Stretch有Uniform,UniformToFill等。默认情况下,图像会被直接编译成xap【zap】文件。

    Image image;

    BitmapImage bitmapImage=new BitmatImage(new Uri("/Images;component/Images/aa.jpg",UriKind.Relative));

    image.Source=bitmapImage;

   属性绑定,绑定语法,绑定主题中的属性到程序中的每一个控件上。

    FontFamily="{StaticResource PhoneFontFamilyNormal}"

   FontSize="{StaticResource PhoneFontSizeNormal}"

   Foreground="{StaticResource PhoneForegroundBrush}"

  LinearGradientBrush

  Style属性

   Navigation Framework URI Mapping,URI Routing

  HyperlinkButton,属性NavigateUri值为 /NavigateBetweenPages;component/xx.xaml?a=b&c=d

  获取值:NavigationContext.QueryString["key"]; 或者

  string value=""; bool? b=NavigationContext.QueryString.TryGetValue("key",out value);

  winphone手机上也有返回键

  PhoneApplicationSevice service=PhoneApplicationSevice.Current; 贮藏器

  protected override void OnNavigatedFrom(...)

{

  service.State["key"]="aa";

  base.OnNavigatedFrom(...);

}

  protected override void OnNavigatedTo()

{

}


 在sdk安装目录有一些图片可供使用,在64位操作系统中,它们位于Program Fils (x86)\Microsoft SDKs\Windows Phone\v7.0\Icons\ 中,选中需要的图片,拖向VS工程中的文件夹中。选中图片,修改它们的Build Action属性值Resource改为Content。

windows phone有菜单可以从底部弹出。

注意系统会把ApplicationBar中的文字首字母小写化。

可以定义最多4个图标按钮,菜单项不限制。

使用Canvas构造一个对话框内容;控制Visibility属性来显示与隐藏。System.Windows.Visibility.枚举。在Canvans中的控件的顺序越低,z顺序就越高。

var类型,Local Type Inference,本地类型推断。

文件存储:ISolatedStorageFile.GetUserStoreForApplication();StreamWriter.

Using (var file){}语法保证file在代码块结束时被关闭。

关闭模拟器将会清除掉缓存信息...