• [WP]基于SilverLight银光的WP7开发教程


              今天给大伙推荐WP7开发系列视频教程,是Silverlight for Windows Phone的微软出来的教程,下面请看课程介绍: 课程简介本系列课程比较完整的覆盖了Silverlight for Windows Phone开发各方面的内容,包括了Windows Phone开发概况,开发环境搭建,Windows Phone上的Silverlight特性,主题风格与样式,数据绑定,页面导航,应用程序栏,屏幕方向的处理,常用控件,在Windows Phone设备上进行调试,隔离存储空间,程序生命周期,Launcher和Chooser,推送通知服务,地理服务与Bing Map控件,Pivot与Panorama控件,App Hub与Marketplace,国际化与本地化等等。通过本系列课程的学习,听众可以具备使用Silverlight开发Windows Phone应用程序的能力,同时具备在Marketplace上销售应用的能力。

    课程特点

         1. 内容完整。覆盖了Silverlight for Windows Phone开发大部分重要的内容。

         2. 实用性强。这是一个程序员录制给程序员收看的开发系列视频。每个知识点都讲述原理,然后通过例子程序演示。演示步骤从头到尾,完整而且详细,听众可以很容易重做演示的例子程序。

         3. 具有延续性。课程的顺序精心安排,具有先后顺序,从浅入深讲述各个知识点。

         4. 配套实验。每节课都配套相应的实验,便于巩固知识。

         5. 课后支持。课程相关及实验的问题可以到我博客上进行交流。

         6. 小甜品。除了Silverlight for Windows Phone的内容以外,我会在课程中插入一些其他内容,包括C#的一些特性,面向对象的软件设计与开发,设计模式,单元测试与重构等。同时分享移动设备开 发的经验,包括移动设备与桌面和Web开发的异同,在设备上如何提高用户体验等。当然也包括了一些冷笑话。

    学习的好处

         1. 了解智能手机开发的快速途径: 智能手机的发展比我预计的还要快,就像今天绝大部分的应用都支持Web一样,以后大部分的应用都需要支持智能手机。如果作为读者的您还没有接触到这方面的 开发,我建议赶紧了解,至少知道智能手机的开发到底是什么,便于以后可以快速的进入这个领域。 如果您是.NET的程序员,Windows Phone将会您最好的选择,本系列课程不仅仅讲述如何把现有.NET开发能力转化到Windows Phone中,同时也讲述本人在智能手机开发领域的一些经验,包括如何提高用户体验等,这些都是与具体哪个手机平台无关的内容。学习Windows Phone等智能手机的开发,本课程专门为您而定做。

        2.学习Silverlight的入门课程:Siverlight的策略发生改 变?我认为是的,Silverlight已经从简单的浏览器插件变成微软跨平台的利器,以后的Silverlight可以运行在所有主流浏览器上(同时能 运行在Windows PC和Mac等操作系统里面),同时Silverlight可以运行在Windows Phone,Windows CE,xBox(预计)和Out of Browser(脱离浏览器的桌面版应用),是目前为止,微软最具备跨平台特性的技术。Silverlight经过的前期的快速发展,越催成熟,如果最为 读者的您还没有接触Silverlight的开发,那现在是最好的时机了。本系列课程不仅仅讲述Windows Phone开发相关的内容,还从基础开始讲述Silverlight开发的内容,学习Silverlight这么强大的跨平台利器,本课程是您不错的选 择。 课程分节介绍下面是各节课程的内容简介,读者可以选择自己感兴趣的内容进行下载学习,我推荐时间许可的话,从头到尾的学习,因为课程都经过精心安排,具有先后顺序与延续性。还有一部分内容在紧张录制中,敬请等候。

    Lin老师的博客:http://www.cnblogs.com/procoder/

    Silverlight for Windows Phone开发系列课程(1):Windows Phone平台概况 (Level 100)
      讲  师:林永坚
      课程简介:本节开始介绍系列课程的概况,包括课程内容,先决条件,学习目的和学习形式。接着通过真实设备的演示Windows Phone的新功能特点。然后讲述Windows Phone的硬件规范,软件架构和开发平台。最后讲述适合学习和开发Windows Phone应用的群体,以及给各种开发者的建议。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101113_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101113_PDF.zip
      Demo下载: 无相关下载
    Silverlight for Windows Phone开发系列课程(2):Windows Phone开发环境搭建 (Level 100)
      讲  师:林永坚
      课程简介:本节开始讲述开发环境搭建的系统要求,包括硬件要求和操作系统要求。接着讲述如何下载和安装Windows Phone Developer Tools的RTW和Update,同时讲述安装过程中注意的事项。然后介绍Windows Phone Developer Tools所包含的工具集: Visual Studio 2010 Express for Windows Phone,XNA Game Studio 4.0 for Windows Phone, Expression Blend for Windows Phone和Windows Phone 7模拟器。最后演示Windows Phone 7设备,介绍Windows Phone Developer Tools开发出来的应用程序,从而知道通过学习这个系列课程能开发出怎样的应用,能达到怎样的水平。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101114_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101114_PDF.zip
      Demo下载: 无相关下载
    Silverlight for Windows Phone开发系列课程(3):第一个Silverlight程序 (Level 200)
      讲  师:林永坚
      课程简介:Phone的应用。开始讲述Silverlight for Windows Phone自带了那些项目模板,Silverlight的基本概念,包括XAML,命名空间等。接着讲述Windows Phone Application这一项目模板为我们生成了那些文件,这些文件的用途以及与传统Silverlight的异同。然后讲述Silverlight for Windows Phone的控件库,Visual Studio的使用等基础知识。接着通过“中国邮编查询小工具”这一例子演示Silverlight程序开发的完整过程,演示如何使用Silverlight的控件,如何编写code-behind代码处理事件。最后演示如何使用Textbox InputScope来个性化输入框,提高用户体验。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101115_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101115_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101115_Demo.zip
    Silverlight for Windows Phone开发系列课程(4):主题样式与数据绑定 (Level 200)
      讲  师:林永坚
      课程简介:本节课程讲述主题样式与数据绑定。开始讲述系统主题与颜色,XAML的样式,自带控件的模板。接着讲述数据绑定的基本概念,如何通过鼠标操作对现有控件进行数据绑定。然后通过例子讲述非数据绑定(通过扑捉事件)的方法对控件数据进行更新,最后讲述通过继承INotifyPropertyChanged来手工完成数据绑定,从而讲述数据绑定的本质原理。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101116_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101116_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101116_Demo.zip
    Silverlight for Windows Phone开发系列课程(5):页面导航 (Level 200)
      讲  师:林永坚
      课程简介:本节课程讲述Silverlight如何支持多页面程序,页面之间如何进行导航,开始讲述框架与页面架构,以及如何分别使用XAML和C#代码进行导航。接着讲述如何配置友好的地址别名。然后讲述页面之间的数据传递,包括字符串的传递和对象的传递。最后讲述如何重写回退按钮的事件处理。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101117_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101117_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101117_Demo.zip
    Silverlight for Windows Phone开发系列课程(6):应用程序栏 (Level 200)
      讲  师:林永坚
      课程简介:本节讲述Windows Phone的一个新特性应用程序栏,这是用来代替传统菜单系统的新功能。开始讲述系统托盘与应用程序栏,接着讲述如何分别使用C#或XAML生成应用程序栏,包括如何使应用程序栏支持国际化与本地化。然后演示如何使用Expression Blend生成应用程序栏。最后讲述应用程序栏的透明度以及对屏幕方向改变的支持。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101118_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101118_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101118_Demo.zip
    Silverlight for Windows Phone开发系列课程(7):屏幕方向与常用控件 (Level 200)
      讲  师:林永坚
      课程简介:本节开始讲述屏幕方向的概念,Windows Phone如何支持屏幕方向的改变,接着讲述UI布局控件(Canvas,Grid和StackPanel)之间的区别,以及他们分别怎样支持屏幕方向的改变。在本节课程中还附带讲述了TextBlock,Image和MediaElement等常用控件的使用以及注意的地方。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101119_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101119_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101119_Demo.zip
    Silverlight for Windows Phone开发系列课程(8):隔离存储空间 (Level 200)
      讲  师:林永坚
      课程简介:本节课讲述Silverlight的一个特性隔离存储空间,开始讲述隔离存储空间的基本概念,为什么Windows Phone使用隔离存储空间。接着通过例子讲述隔离存储空间下的目录操作与文件操作。然后讲述在隔离存储空间里面如何读写应用程序配置信息。接着再讲述隔离存储空间的配额管理以及应用策略。最后介绍Windows Phone本地数据库的应用。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101120_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101120_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101120_Demo.zip
    Silverlight for Windows Phone开发系列课程(9):在Windows Phone设备上进行调试 (Level 200)
      讲  师:林永坚
      课程简介:本节课讲述如何在Windows Phone真实设备上进行程序的调试,包括调试的准备工作,调试步骤和注意事项。接着讲述如何通过WPConnect工具来调试Media的API。然后讲述如何把Xap文件部署到Windows Phone设备上,最后讲述应用程序栏对中文的支持。
      视频下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101121_Video.zip
      PDF下载: http://download.microsoft.com/download/2/4/5/245F4ABD-385D-45D3-9EE3-6CD3EBED8005/WebCast20101121_PDF.zip
      Demo下载: http://download.microsoft.com/download/9/C/5/9C597177-9202-440D-BD05-7BFD97444854/WebCast20101121_Demo.zip
    Silverlight for Windows Phone开发系列课程(10):应用程序生命周期 (Level 300)
      讲  师:林永坚
      课程简介:本节课讲述Windows Phone应用程序的生命周期,开始讲述Windows Phone的生命周期设计的原因与作用,然后分别讲述了一般生命周期与墓碑机制(Tombstone)生命周期,同时讲述了Windows Phone的墓碑机制,最后通过例子详细的解析了生命周期中涉及到的事件,以及这些事件的处理方法与注意事项。
      视频下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101201_Video.zip
      PDF下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101201_PDF.zip
      Demo下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101201_Demo.zip
    Silverlight for Windows Phone 开发系列课程(11):启动器与选择器 (Level 300)
      讲  师:林永坚
      课程简介:本节课讲述Windows Phone的启动器与选择器,分别讲述了各种启动器与选择器的使用方法,找出他们的共同规律。然后详细的讲述启动器与选择器的生命周期,分成四大类来讲述不同类型的启动器与选择器生命周期的差异性,从而知道我们使用过程中需要注意的事项。
      视频下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101202_Video.zip
      PDF下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101202_PDF.zip
      Demo下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101202_Demo.zip
    Silverlight for Windows Phone 开发系列课程(12):推送通知服务 (Level 300)
      讲  师:林永坚
      课程简介:本节课讲述Windows Phone的推送通知服务,开始讲述为什么使用推送通知服务,推送通知服务的原理以及使用规范,然后通过例子详细了讲述Raw Notification,Toast Notification以及Tile Notification在云服务端与手机端的实现。最后讲述如何定时更新Tile。
      视频下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101203_Video.zip
      PDF下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101203_PDF.zip
      Demo下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101203_Demo.zip
    Silverlight for Windows Phone 开发系列课程(13):Panorama与Pivot控件 (Level 200)
      讲  师:林永坚
      课程简介:本节课讲述Windows Phone的新型控件Panorama与Pivot控件,分别讲述Panorama与Pivot控件的特点,以及如何使用他们做出符合Metro UI方案的应用程序。然后讲述他们之间的区别,在现实开发中如何进行选择。最后讲述使用这两个控件的注意事项。
      视频下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101204_Video.zip
      PDF下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101204_PDF.zip
      Demo下载: http://download.microsoft.com/download/C/A/7/CA7BC8CF-31D7-470E-9FF1-E849169B0B10/WebCast20101204_Demo.zip
    Silverlight for Windows Phone 开发系列课程(14):地理位置服务与反应性扩展框架 (Level 300)
      讲  师:林永坚
      课程简介:本节课讲述地理位置服务与反应性扩展框架,开始讲述地理位置服务简介以及GPS,Wi-Fi和移动基站等位置服务数据源的异同。然后通过例子讲述如何使用地理位置服务。接着讲述反应性扩展框架简介,最后通过例子使用反应性扩展框架模拟地理位置服务。
      视频下载: http://download.microsoft.com/download/F/F/4/FF4E4AFE-F2E6-4D38-A274-D1A65B1DD6CE/WebCast20101205_Video.zip
      PDF下载: http://download.microsoft.com/download/F/F/4/FF4E4AFE-F2E6-4D38-A274-D1A65B1DD6CE/WebCast20101205_PDF.zip
      Demo下载: http://download.microsoft.com/download/F/F/4/FF4E4AFE-F2E6-4D38-A274-D1A65B1DD6CE/WebCast20101205_Demo.zip
    Silverlight for Windows Phone 开发系列课程(15):Bing Maps控件 (Level 300)
      讲  师:林永坚
      课程简介:本节课讲述Windows Phone上的Bing Maps Silverlight控件。开始讲述Bing Maps账户与key的申请。然后讲述Bing Maps控件的使用,例如地图缩放,地图显示模式,Pushpin的使用等。最后讲述如何使用Bing Maps SOAP服务计算路径,并把路径呈现到Bing Maps控件上。
      视频下载: http://download.microsoft.com/download/4/3/5/4355B658-D641-4CCE-A834-D291085D7E70/WebCast20101206_Video.zip
      PDF下载: http://download.microsoft.com/download/4/3/5/4355B658-D641-4CCE-A834-D291085D7E70/WebCast20101206_PDF.zip
      Demo下载: http://download.microsoft.com/download/4/3/5/4355B658-D641-4CCE-A834-D291085D7E70/WebCast20101206_Demo.zip
    Silverlight for Windows Phone 开发系列课程(16):在Marketplace上销售应用 (Level 100)
      讲  师:林永坚
      课程简介:本节课讲述如何在Windows Phone Marketplace上销售应用。开始讲述Marketplace账户的注册的步骤以及注意事项。然后讲述如何上传应用程序到Marketplace以及上传前的一些准备工作,例如混淆代码,检查应用可用能力列表等。最后讲述如何把销售的收入兑现。
      视频下载: http://download.microsoft.com/download/4/3/5/4355B658-D641-4CCE-A834-D291085D7E70/WebCast20101207_Video.zip
      PDF下载: http://download.microsoft.com/download/4/3/5/4355B658-D641-4CCE-A834-D291085D7E70/WebCast20101207_PDF.zip
      Demo下载: 无相关下载

     

    更多有关Webcast系列教程请关注

    http://www.microsoft.com/china/msdn/events/webcasts/shared/webcast/Series.aspx 

    Windows Phone 7 Jump Start 系列视频
    Inside Windows Phone系列视频
    Windows Phone Design Day系列视频

    全套wp7视频教程 - 一起学Windows Phone7/wp7开发视频教程系列
    课程介绍:
    Windows Phone7 是今年年初才推出的一个全新的移动平台,集成了微软Silverlight和XNA两大优势产品框架在里面,使这个平台与Windowsmobile平台有了很大的区别,由于这种差别的存在,使应用开发也不同于以往的Windowsmobile开发了。一起学WindowsPhone7开发课程,对WindowsPhone7各个功能模块开发都有所讨论,是一个由入门到深入的系列课程,是一个面向开发者和对Windows Phone感兴趣人士的课程,通过这个系列课程的学习,可以使您对WindowsPhone7的开发有一个完整的认识,也为您进入更深层次的开发奠定了基础。
    课程章节:
    一起学WindowsPhone7开发系列课程(1):初识WindowsPhone 7
    今年年初微软发布了最新的移动平台Windows Phone7,也给我们带来了不一样的开发体验。它的架构是什么、开发环境是怎么样的?本次课程将带您学习这个内容。
    一起学WindowsPhone7开发系列课程(2):Silverlight forWindowsPhone 7
    WindowsPhone7应用开发,是以Silverlight为基础的,但又有一些不同,那有哪些不同?如何进行开发呢?本次课程将带您学习这个内容。
    一起学WindowsPhone7开发系列课程(3):控件开发一
    控件是Silverlight应用开发的基础,对于用好控件,是Windowsphone7开发的基本功,本次课程将带您学习容器控件、按钮控件等内容。

    一起学WindowsPhone7开发系列课程(4):控件开发二
    在应用开发中,如何输入文字、密码?如何播放视频、声音?如何显示文字?如何使用进度条?本次课程将带您学习这个内容。

    一起学WindowsPhone7开发系列课程(5):控件开发三
    在Silverlight开发中,是没有绘制图形的函数的,那我们如何绘制多边形?应用中,需要地图展示,如何加载地图?如何做标记?本次课程将带您学习这个内容。

    一起学WindowsPhone7开发系列课程(6):控件开发四
    开发过程中,发现Toolbox里的控件不够用怎么办?本次课程将带您学习Silverlight toolkit forwindowsphone控件以及UserControl控件,让您自已来定义控件。

    一起学WindowsPhone7开发系列课程(7):控件开发五
    全景视图控件与枢轴控件,是WindowsPhone7所特有的控件,那它们有什么特点,在开发中如何使用?本次课程将带您学习这个内容。
    一起学WindowsPhone7开发系列课程(8):控件开发六
    DeepZoom是silverlight的特色功能之一,也同样被加到了windowsphone 7中了,它又有什么特点?在WindowsPhone7开台上的使用又有哪些不同呢?本次课程将带您学习这个内容。

    一起学WindowsPhone7开发系列课程(9):Express Blend工具的使用
    Silverlight可以开发出很炫目的UI效果,WindowsPhone7自然也不例外,Express blend工具,正是开发Silverlight效果的利器,本次课程将带您学习这个工具的使用。

    一起学WindowsPhone7开发系列课程(10):视觉管理器(Visual State Manager)
    视觉管理器,是Silverlight中用来开发管理带有状态的控件的状态以及用于状态过渡的逻辑,可以使控件产生多种特殊效果,本次课程将带您学习这个内容。

    一起学WindowsPhone7开发系列课程(11):任务(Task)
    以前Windowsmobile上关于SMS、Phone、Email、Camera等的开发经验都已经无效了,因为WP7根本就没有提供直接操作这些的API。但是这并不等于不能做,那如何实现呢?本次课程将带您学习通过来调用系统的任务来实现这些功能。

    一起学WindowsPhone7开发系列课程(12):Windowsphone7多任务的模拟
    WindowsPhone7是一个单任务的平台,但是又需要自动唤起我们的应用程序,该如果实现呢?本次课程将带您学习通过Tombstone、Push Notification机制来模拟多任务的实现。

    一起学WindowsPhone7开发系列课程(13):设备的开发
    在WindowsPhone7平台上如何获取相关设置信息?如何获取重力加速数据、位置服务信息?如何启动振动、打开收音机?本次课程将带您学习这些内容。

    一起学WindowsPhone7开发系列课程(14):Hub的开发
    在WindowsPhone7平台中,一大特色就是Hub,这个平台将联系人、Office、音乐、视频、游戏等,都以Hub方式集成在一起,本次课程将带您学习Hub的开发以及带给我们的不同体验。

    一起学WindowsPhone7开发系列课程(15):XNA 在 Silverlight 中的应用
    WindowsPhone7是由Silverlight和XNA两个framework组成的,一个用于开发应用,一个用于开发游戏,但它们之间并不是完全隔离的,本次课程将带您学习如何在Silverlight中使用XNA的功能。

    1
       
    2
       
    3
       
    4
       
    5
       
    6
       
    7
       
    8
       
    9
       
    10
       
    11
       
    12
       
    13
       
    14
       
    15
     


    官方下载地址
    http://msdn.microsoft.com/zh-cn/gg566445.aspx

  • 相关阅读:
    基础命令
    RHEL7装机
    模拟项目
    配置NAT,PAT
    配置标准ACL,扩展ACL,命名ACL
    HSRP,STP配置
    三层交换配置及RIP动态路由
    vlan,trunk,DHCP,以太网通道
    ERRORS: MRBC.UserInfo.groups: (fields.E304) Reverse accessor for 'UserInfo.groups' clashes with reverse accessor for 'User.groups'. HINT: Add or change a related_name argument to the definition for '
    权限rbac(基于角色的访问控制)
  • 原文地址:https://www.cnblogs.com/webapplee/p/3767810.html
Copyright © 2020-2023  润新知