Silverlight 2 End to End教程:创建Digg搜索客户端

Part0 Silverlight 2 End to End系列教程:创建Digg搜索客户端

       


翻译人:ttzhangTechnology Life
翻译时间:2008/10/24  22:02:59
作者:ScottGu
出处:ScottGu's Blog

         

Silverlight 2 End to End Tutorial: Building a Digg Search Client

Silverlight 2 End to End系列教程:创建Digg搜索客户端      

To help people come up to speed with Silverlight 2, I've written a simple Silverlight application and put together a series of step by step tutorials that explain the different programming concepts behind it (controls, layout management, networking, data-binding, styles, user controls, templates, etc). I also added a tutorial post that demonstrates how to migrate the application outside of the browser and enable it to run as a desktop application using WPF and the full .NET Framework.

为了帮助大家快速跟上Silverlight2,我已经写了一个简单Silverlight程序,并把一步一步学习的教程放在一个系列中,来向大家解释其中不同的编程概念(控件、布局管理、网络通信、数据绑定、样式、用户控件、模板等等)。另外,我也发布了一个怎样把Silverlight应用迁移到浏览器之外的示例教程,使用WPF和.NET Framework 让Silverlight应用像桌面应用程序一样运行。

下面是我整理在一起的该系列的8个教程的链接:

注意:由于此部分教程已经存在中文版,所以本人从本篇教程起停止翻译,并在上面添加了英文和中文翻译的连接。

     (【中文版】 第零部分:简介)

        Part 1: Creating "Hello World" with Silverlight 2 and VS 2008

       (【中文版】 第一部分:使用Silverlight 2 和 VS 2008创建“Hello World”程序

       (【中文版】 第二部分:使用布局管理(木野狐译) )

       (【中文版】 第三部分:使用 Networking取回数据并填充DataGrid

        Part 4: Using Style Elements to Better Encapsulate Look and Feel

       (【中文版】 第四部分:使用 Style 元素更好地封装观感 (木野狐译))

        Part 5: Using the ListBox and DataBinding to Display List Data

       (【中文版】 第五部分:用 ListBox 和 DataBinding 显示列表数据 (木野狐译))

        Part 6: Using User Controls to Implement Master/Details Scenarios

       (【中文版】 第六部分:使用用户控件实现主从表场景

       (【中文版】 第七部分:使用控件模板定制控件的观感

       (【中文版】 第八部分:使用WPF创建一个Digg桌面应用

 

The application I've built the tutorials around is a simple search front end to the popular Digg.com site, and allows users to type in search topics and browse Digg stories that match them.

我已经创建的这个程序是一个基于流行网站Digg.com的简单搜索前端,它允许我们输入搜索主题,浏览符合搜索主题的DiggStory。

<Download Code> Click hereto download a completed version of the Digg client sample. </Download Code>

<Download Code>点击这里下载Digg客户端示例的完整源代码. </Download Code>

   

All of the UI in the application is built using Silverlight's built-in WPF UI framework. The application uses the Silverlight networking stack and cross-domain access support to query the Digg REST API directly, and uses LINQ and LINQ to XML to query/transform the returned data into DiggStory objects that I databind the UI against:

  1. 程序中全部的UI都是使用Silverlight中内建的WPF UI Framework创建的。程序使用Silverlight的多种网络和跨域访问的支持直接查询DiggREST API,并且使用了LINQ 和LINQ to XML来查询/转换返回的数据为我在数据绑定到UI上的DiggStory对象:

       

       

    The application supports a master/details data interaction model that allows users to select stories from the search list and quickly drill into more details about them. A user can jump to the Digg article directly from the details form, or close it and pick another story to drill into:

    这个程序支持"主/详细"数据交互的模型,允许用户从搜索列表选择Stories,并快速显示他们的更详细的信息。在详细信息窗体,用户可以直接跳转到Digg上的文章,或者关闭这个窗体并选择查看另外一个Story的详细信息。

       

       

    The entire application is implemented in about 35 lines of C# code and 75 lines of XAML page/user-control markup. It only uses controls and libraries built-into Silverlight.

    整个程序执行大约35行C#代码和75行XAML 页面/用户控件标记。它只使用了Silverlight内置的控件和类库。

    <Download Code> Click here to download a completed version of the Digg client sample. </Download Code>

    <Download Code>点击这里下载Digg客户端示例的完整源代码. </Download Code>

       

    If you have used WPF before the UI concepts I discuss in the tutorial series will all be very familiar. If you haven't used WPF before, the tutorials should provide a good overview of the fundamental programming concepts in it, and hopefully provide you with the basic knowledge necessary to start building either Silverlight 2 or WPF applications.

    如果你以前使用过WPF,那么你对我在这个系列教程中谈到的UI概念就会非常熟悉。如果你以前没有使用过WPF,这个教程应该会让你对它的基本编程概念有一个很好的了解,也希望能为你开始创建Silverlight 2 或者WPF应用程序提供必要的基本知识。

       

    这是我第一次翻译文章,有很多地方翻译的不好,希望园子里的朋友多多指点和支持!我会在接下来的二天里,把这8篇文章的翻译发到这里,请大家关注!

时间: 2024-10-30 21:16:13

Silverlight 2 End to End教程:创建Digg搜索客户端的相关文章

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十四)

C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(四十四)制作主角属性面板及加点器 游戏中会使用大量的菜单面板,而这些面板往往都带有选项卡.如果用Silverlight工具中的TabControl,则需要通过复杂的xaml重写模板来实现自定义样式,这一点时常让开发者头疼,毕竟界面的东西应该属于美工的范畴,这也是我所发现在目前Silverlight中唯一一处只能通过xaml而无法用代码实现的地方.当然,如果您对此特别感兴趣,同样可以到http://www.c

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(八)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(八) 完美实现A*寻径动态动画 本节将紧接着上一节,在它的基础上实现鼠标点击动态创建完美的A*寻路动画.(模拟游戏中人物的真实移动,这次可是有障碍物的,可以说基本上完成了人物移动引擎的一半了呢) 首先,在上一节的代码前部分加入一个叫做player的圆形作为我们将要控制的对象(模拟游戏中的主角,下文均称之为"主角"): Ellipse player = new Ellipse(); //用一个圆来模拟目

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(五)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(五)实现2D人物动画② 第二种方法我称之为图片截取法,准备工作:这里我以创建主角向右方向施法动画为例.首先需要将10帧150*150的图片通过Photoshop或其他方式合成为一张1500*150的大图,如下图: 从图上可以很清晰的看出主角的整个流畅的施法流程.然后将这张图片保存到项目文件夹中的binDebug文件夹中,如下图: 为什么必须放在这呢?因为后面的代码中BitmapFrame.Create()函数调

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(四)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(四)实现2D人物动画① 通过前面的学习,我们掌握了如何动态创建物体移动动画,那么接下来我将介绍WPF中如何将物体换成2D游戏角色,并通过使用前面所讲的DispatcherTimer计时器来实现2D人物角色的各种动作动画. 动态实现2D人物角色动画目前有两种主流方法,下面我会分别进行介绍. 第一种方法我称之为图片切换法,准备工作:首先通过3DMAX等工具3D渲染2D的方法制作出角色,然后将角色每个动作均导出8个方

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(三十三)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(三十三) 锦上添花之魔法特效装饰 本节我将以冻结魔法为例,向大家讲解如何为魔法增加漂亮的特效装饰. 经过前面的学习,大家是否已总结出一个规律:需要增加额外东西时,首先想到的即是用户控件:那么我们首先创建一个名为QXDecoration的用户控件.接下来就是准备素材了.这里我制作了3张用于装饰的冰刺: 分别命名为4-0,4-1,4-2,其命名规则对应上一节中的魔法类型设定,即所有冰冻类魔法均可以用之来装饰.为什么

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十九)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十九) 人工智能(AI)之追踪者 经过前面28节的不断完善,主角已经具备了MMORPG游戏中的大多数功能:但是其他精灵例如怪物等暂时还是无法行动的,上一节中它们无辜的充当了主角的肉靶子,它们开始呐喊:上帝呀,请给予我们灵魂与智慧吧!其实灵魂早就有了,就是精灵的生命线程.那么该如何赋予精灵智慧呢? 精灵智慧的实现其实就是为精灵赋予AI(人工智能).完整的游戏引擎或多或少都必须拥有一定的AI,例如棋牌类型游戏有着

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十四)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十四) Be careful!前方怪物出没 游戏的精灵框架到此为止算告一段落,让我们一同来体验它带来的神奇效应. 一个安静的黄昏,主角悠闲的甩着它帅气的毛发独跑于林阴大道.怎知天色已晚即将进入月亮的领地,嘿嘿,我们的故事就从这里开始:Be careful,前方怪物出没! 实在不忍心让主角空有一身武艺而无处施展,本节为了不再让它孤单,我将向游戏中加入可爱的妖精妹妹与之为伴: 好象在哪见过呢?对,就是她了,可爱吧

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十二)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十二)重构 – 让代码插上翅膀自由飞翔 上一节,我将游戏地图模式进行了一次重大的变动,这在实际开发中意味着项目大规模重置,虽然表面上显得游刃有余,仅仅一个AllMove()方法的改变即实现了完美转型,这全得归功于前20节所搭建起的相对高度可扩展平台.但是,随着开发不断深入,我慢慢的感到些许的不安,因为代码上的日益松散与结构的渐渐稀疏如同Windows系统的磁盘碎片与日俱增,未来维护时的烦琐与痛心疾首已历历在目

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(十七)

C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(十七) 完美精灵之八面玲珑(WPF Only)① 通过C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(十四) 精灵控件横空出世!①.C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(十五) 精灵控件横空出世!②的学习,我们掌握了如何创建一个初具雏形的精灵控件.目前我已经赋予了它少量的属性,但是离完美还有很长的距离.因此,我打算在后面的章节