<?xml version="1.0" encoding="iso-8859-1"?>
<?xml-stylesheet href="http://www.dflying.net/styles/rss.css" type="text/css"?>
<rdf:RDF 
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 
  xmlns="http://my.netscape.com/rdf/simple/0.9/"
>

 <channel>
  <title>Programmer Dflying</title>
  <link>http://dflying.dflying.net/1</link>
  <description>You may find things like PHP, .NET, Javascript, Atlas and C#. Also, welcome to check out my other stuffs on MSN Space: http://spaces.msn.com/dflying/</description>
 </channel>
    <item>
   <title>Move to http://me.dflying.net/</title>
   <description>&lt;p&gt;I decided to move out using WordPress with a new domain name &lt;/p&gt;
&lt;h1&gt;&lt;a href=&quot;http://me.dflying.net/&quot;&gt;http://me.dflying.net/&lt;/a&gt;&lt;/h1&gt;
for some reason. Kindly remind please update your bookmark if you are
interested in here. The old blog will still exist for you reference.&lt;br /&gt;
I will still post computer tech related posts here. At the meantime, welcome to check my daily life at: &lt;a target=&quot;_blank&quot; href=&quot;http://spaces.msn.com/dflying/&quot;&gt;http://spaces.msn.com/dflying/&lt;/a&gt; and the localized (Chinese) tech blog at: &lt;a target=&quot;_blank&quot; href=&quot;http://dflying.cnblogs.com/&quot;&gt;http://dflying.cnblogs.com/&lt;/a&gt;.&lt;p /&gt;
&lt;p&gt;God bless me!
&lt;/p&gt;&lt;br/&gt;</description>
   <link>http://dflying.dflying.net/1/archive/139_move_to_httpmedflyingnet.html</link>
      <pubDate>Fri, 28 Apr 2006 23:06:05 -0700</pubDate>   
  </item>
    <item>
   <title>Apply XSLT to XML Using ASP.NET Atlas XSLTView Control</title>
   <description>&lt;p&gt;I want to introduce some of the more advanced Atlas &lt;b&gt;Sys.UI.Data&lt;/b&gt; controls in this series, including:&lt;/p&gt;&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.ListView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/113_display_listible_data_using_aspnet_atlas_listview_control.html&quot;&gt;Display Listible Data Using ASP.NET Atlas ListView Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.ItemView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/114_display_one_item_in_a_collection_using_aspnet_atlas_itemview_control.html&quot;&gt;Display One Item in a Collection using ASP.NET Atlas ItemView Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.DataNavigator&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/127_paging_your_list_using_aspnet_atlas_pagenavigator_control.html&quot;&gt;Paging Your List Using ASP.NET Atlas PageNavigator Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.SortBehavior&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/128_sorting_your_list_using_aspnet_atlas_sortbehavior.html&quot;&gt;Sorting Your List Using ASP.NET Atlas SortBehavior&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.XSLTView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/129_apply_xslt_to_xml_using_aspnet_atlas_xsltview_control.html&quot;&gt;Apply XSLT to XML Using ASP.NET Atlas XSLTView Control&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This is the fifth, also the last post: &lt;a href=&quot;http://dflying.dflying.net/1/archive/129_apply_xslt_to_xml_using_aspnet_atlas_xsltview_control.html&quot;&gt;Apply XSLT to XML Using ASP.NET Atlas XSLTView Control&lt;/a&gt;&lt;/p&gt;&lt;br/&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;http://dflying.dflying.net/plugins/plogeshi/styles/plogeshi.css&quot; /&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;XSLT is a stylesheet language for XML. It can style your XML raw data as you wish.&lt;span&gt;  &lt;/span&gt;For more info about the XSLT, please refer to W3C document: &lt;a href=&quot;http://www.w3.org/TR/xslt&quot;&gt;http://www.w3.org/TR/xslt&lt;/a&gt;.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Atlas provides the XMLDataSource and XSLTView controls to make it possible to retrieve the XML data and XSLT data from server, apply the XSLT to the XML and display to user on the flight. You may use this feature in many ways, such as an online RSS feed reader application.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;XSLTView control has following properties:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;document&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The XML document stores the XML data. You may get the document from an Atlas client side XMLDataSource control and you should always set this property.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;transform&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The XSLT document stores the XSLT data used for styling your XML. You may also get this by using an XMLDataSource control. You should always set this property.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;parameters&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The XSLT parameters in XSLT file definitions. Read only.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;And following method:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;update&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: Render the XML document using the XSLT. This method is automatically called when the XSLTView got initialized or one of the properties above is changed.&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;OK, let go though a demo for XSLTView control and XMLDataSource control.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;The first step is getting our testing data, both an XML file and an XSLT file. I’ve got these simply by googling and found the files at &lt;a href=&quot;http://www.w3schools.com/xsl/xsl_client.asp&quot;&gt;http://www.w3schools.com/xsl/xsl_client.asp&lt;/a&gt;. For this demo, I just choose the raw XML and XSLT files but in the real world, we may easily get the dynamically generated ones from a Web Service or some other CGIs.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Here is the XML. Save it as MyData.xml.&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;&lt;/span&gt;?xml &lt;span class=&quot;re0&quot;&gt;version&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;1.0&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;encoding&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;iso-8859-1&quot;&lt;/span&gt;?&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;catalog&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Empire Burlesque&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Bob Dylan&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;USA&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Columbia&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;10.90&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;1985&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Empire Burlesque&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Bob Dylan&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;USA&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Columbia&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;10.90&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;1985&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Empire Burlesque&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Bob Dylan&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;USA&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Columbia&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;10.90&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;1985&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Empire Burlesque&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/title&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Bob Dylan&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/artist&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;USA&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/country&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Columbia&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/company&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;10.90&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/price&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;1985&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/year&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/cd&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/catalog&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Here is the XSLT. Save it as MyStyle.xsl.&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;&lt;/span&gt;?xml &lt;span class=&quot;re0&quot;&gt;version&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;1.0&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;encoding&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;iso-8859-1&quot;&lt;/span&gt;?&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xsl&lt;/span&gt;:stylesheet &lt;span class=&quot;re0&quot;&gt;version&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;1.0&quot;&lt;/span&gt;
xmlns:&lt;span class=&quot;re0&quot;&gt;xsl&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;http://www.w3.org/1999/XSL/Transform&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xsl&lt;/span&gt;:template &lt;span class=&quot;re0&quot;&gt;match&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;/&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;h2&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;My CD Collection&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/h2&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;table&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;border&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;1&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tr&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;bgcolor&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;#9acd32&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;th&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;align&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;left&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;Title&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/th&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;th&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;align&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;left&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;Artist&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/th&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xsl&lt;/span&gt;:for-each &lt;span class=&quot;re0&quot;&gt;select&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;catalog/cd&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
          &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xsl&lt;/span&gt;:value-of &lt;span class=&quot;re0&quot;&gt;select&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;title&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
          &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
          &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xsl&lt;/span&gt;:value-of &lt;span class=&quot;re0&quot;&gt;select&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;artist&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
          &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
      &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/xsl&lt;/span&gt;:for-each&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/table&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
  &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/xsl&lt;/span&gt;:template&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/xsl&lt;/span&gt;:stylesheet&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Let’s define our ASPX page, we have following two parts to add:&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;Atlas server side control ScriptManager, which is required in every Atlas page to load essential framework files.&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&amp;lt;div&amp;gt; with id &lt;b&gt;dataContent&lt;/b&gt;, which is used by Atlas to place the rendered content. &lt;/li&gt;
&lt;/ol&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- ScriptManager --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;atlas&lt;/span&gt;:ScriptManager &lt;span class=&quot;re0&quot;&gt;runat&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;server&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;ID&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;scriptManager&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- XSLTView here (container) --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataContent&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;The last thing is add Atlas script to the page. There are three sections in the Atlas script block:&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Section 1. An XMLDataSource control, used to retrieve the XML data from server.&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xmlDataSource&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;autoLoad&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;serviceURL&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;MyData.xml&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Section 2. Another XMLDataSource control, used to retrieve the XSLT data from server.&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xmlDataSource&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;xsltSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;autoLoad&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;serviceURL&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;MyStyle.xsl&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Section 3. An XSLTView control used to render the XML using the XSLT definitions. Notice here we are using bindings to set the&lt;b&gt; document&lt;/b&gt; and&lt;b&gt; transform&lt;/b&gt; properties of the XSLT control.&lt;/span&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;xsltView&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataContent&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;document&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;document&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;transform&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;xsltSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;document&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/xsltView&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Run in browser:&lt;br /&gt;
&lt;img class=&quot;res_image&quot; style=&quot;MARGIN: 5px&quot; src=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=xsltview.JPG&quot; /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Source code for this demo can be downloaded here: &lt;a href=&quot;http://dflying.dflying.net/1/resources/AtlasXSLTViewDemo.zip.html&quot;&gt;http://dflying.dflying.net/1/resources/AtlasXSLTViewDemo.zip.html&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;</description>
   <link>http://dflying.dflying.net/1/archive/129_apply_xslt_to_xml_using_aspnet_atlas_xsltview_control.html</link>
      <pubDate>Thu, 20 Apr 2006 05:42:12 -0700</pubDate>   
  </item>
    <item>
   <title>Sorting Your List Using ASP.NET Atlas SortBehavior</title>
   <description>&lt;p&gt;I want to introduce some of the more advanced Atlas &lt;b&gt;Sys.UI.Data&lt;/b&gt; controls in this series, including:&lt;/p&gt;&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.ListView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/113_display_listible_data_using_aspnet_atlas_listview_control.html&quot;&gt;Display Listible Data Using ASP.NET Atlas ListView Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.ItemView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/114_display_one_item_in_a_collection_using_aspnet_atlas_itemview_control.html&quot;&gt;Display One Item in a Collection using ASP.NET Atlas ItemView Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.DataNavigator&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/127_paging_your_list_using_aspnet_atlas_pagenavigator_control.html&quot;&gt;Paging Your List Using ASP.NET Atlas PageNavigator Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.SortBehavior&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/128_sorting_your_list_using_aspnet_atlas_sortbehavior.html&quot;&gt;Sorting Your List Using ASP.NET Atlas SortBehavior&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.XSLTView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/129_apply_xslt_to_xml_using_aspnet_atlas_xsltview_control.html&quot;&gt;Apply XSLT to XML Using ASP.NET Atlas XSLTView Control&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This is the fourth post: &lt;a href=&quot;http://dflying.dflying.net/1/archive/128_sorting_your_list_using_aspnet_atlas_sortbehavior.html&quot;&gt;Sorting Your List Using ASP.NET Atlas SortBehavior&lt;/a&gt; &lt;/p&gt;&lt;br/&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;http://dflying.dflying.net/plugins/plogeshi/styles/plogeshi.css&quot; /&gt;&lt;p&gt;Add sorting feature to you list is pretty cool, and some of the ASP.NET server controls have already had this feature built in, such as the DataGrid and GridView. Atlas also let you do so on client side by providing the&lt;b&gt; Sys.UI.Data.SortBehavior&lt;/b&gt; behavior.&lt;/p&gt;
&lt;p&gt;SortBehavior behavior works with a DataView control (see: &lt;a href=&quot;http://dflying.dflying.net/1/archive/125_introduction_to_atlas_controls_in_namespace_sysdata__dataview_and_datafilter.html&quot;&gt;Introduction to Atlas Controls in Namespace Sys.Data – DataView and DataFilter&lt;/a&gt;) and implements the sorting by changing the &lt;b&gt;sortDirection&lt;/b&gt; property of DataView.&lt;/p&gt;
&lt;p&gt;SortBehavior object has following properties:&lt;/p&gt;
&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;dataView: A reference of DataView object that this SortBehavior will apply the sorting to. You should always set this property.&lt;/li&gt;
&lt;li&gt;sortColumn: The name of the DataView column which this SortBehavior will sort by. You should always set this property.&lt;/li&gt;
&lt;li&gt;sortAscendingCssClass: The CSS class of the control that triggers the sorting when sort direction is Ascending.&lt;/li&gt;
&lt;li&gt;sortDescendingCssClass: The CSS class of the control that triggers the sorting when sort direction is Descending.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;Let&#039;s try to sort a list now. First step is to expose a Web Service to Atlas page. The Web Service simply returns introductions to some famous people (except me).&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Collections&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Collections&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Generic&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;ComponentModel&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;IO&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Caching&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Services&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Services&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Protocols&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; Microsoft.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Services&lt;/span&gt;;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;// For simplicity this example demonstraes storing and  manipulating &lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;// the data objects in memory. A database can also be used.&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;
    
&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;WebService&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Namespace&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&quot;http://tempuri.org/&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;WebServiceBinding&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;ConformsTo = WsiProfiles.&lt;span class=&quot;me1&quot;&gt;BasicProfile1_&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;class&lt;/span&gt; SampleDataService : DataService
&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; List&amp;lt;Entry&amp;gt; _data;
    &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; _nextId;
    &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;object&lt;/span&gt; _dataLock = &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;kw4&quot;&gt;object&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; List&amp;lt;Entry&amp;gt; Data
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get
        &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_data == &lt;span class=&quot;kw1&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                &lt;span class=&quot;kw1&quot;&gt;lock&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_dataLock&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                    &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_data == &lt;span class=&quot;kw1&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                        _data = &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; List&amp;lt;Entry&amp;gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;Dflying Chen&quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;A small piece of cake&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;Bill Gates&quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;Chairman &amp;amp; Chief Software Architect&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;2&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;Scott Guthrie&quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;General Manager&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;Ray Ozzie&quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;CTO&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;4&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;Steve Ballmer&quot;&lt;/span&gt;, &lt;span class=&quot;st0&quot;&gt;&quot;CEO&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        _nextId = &lt;span class=&quot;nu0&quot;&gt;3&lt;/span&gt;;
                    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
                &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _data;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectMethod&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;DataObjectMethodType.&lt;span class=&quot;me1&quot;&gt;Delete&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;void&lt;/span&gt; DeleteRow&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; id&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;foreach&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;Entry row &lt;span class=&quot;kw1&quot;&gt;in&lt;/span&gt; _data&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;row.&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt; == id&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                &lt;span class=&quot;kw1&quot;&gt;lock&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_dataLock&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                    _data.&lt;span class=&quot;me1&quot;&gt;Remove&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;row&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
                &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;
            &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectMethod&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;DataObjectMethodType.&lt;span class=&quot;me1&quot;&gt;Select&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt; SelectRows&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; SampleDataService.&lt;span class=&quot;me1&quot;&gt;Data&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;ToArray&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectMethod&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;DataObjectMethodType.&lt;span class=&quot;me1&quot;&gt;Insert&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry InsertRow&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; name, &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; description&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        Entry newRow;
        &lt;span class=&quot;kw1&quot;&gt;lock&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_dataLock&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            newRow = &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_nextId++, name, description&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
            _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;newRow&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; newRow;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectMethod&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;DataObjectMethodType.&lt;span class=&quot;me1&quot;&gt;Update&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;void&lt;/span&gt; UpdateRow&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;Entry updateRow&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;foreach&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;Entry row &lt;span class=&quot;kw1&quot;&gt;in&lt;/span&gt; _data&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;row.&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt; == updateRow.&lt;span class=&quot;me1&quot;&gt;Id&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                row.&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt; = updateRow.&lt;span class=&quot;me1&quot;&gt;Name&lt;/span&gt;;
                row.&lt;span class=&quot;me1&quot;&gt;Title&lt;/span&gt; = updateRow.&lt;span class=&quot;me1&quot;&gt;Title&lt;/span&gt;;
                &lt;span class=&quot;kw1&quot;&gt;break&lt;/span&gt;;
            &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;class&lt;/span&gt; Entry
&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; _name;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; _title;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; _id;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectField&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;true&lt;/span&gt;, &lt;span class=&quot;kw1&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; Id
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _id; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        set &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; _id = value; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectField&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DefaultValue&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&quot;New row&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; Name
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _name; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        set &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; _name = value; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectField&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DefaultValue&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; Title
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _title; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        set &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; _title = value; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        _id = -&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; id, &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; name, &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; description&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        _id = id;
        _name = name;
        _title = description;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;Then the ASPX page, there are three sections in the ASPX page you need to consider:&lt;/p&gt;
&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;A ScriptManager control, which is required in every Atlas page.&lt;/li&gt;
&lt;li&gt;The place holder div (&amp;lt;div&amp;gt; with id &lt;b&gt;dataContents&lt;/b&gt;), where Atlas will place the rendered paged list in.&lt;/li&gt;
&lt;li&gt;A hidden &amp;lt;div&amp;gt;, which is used to define the templates.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;Here’s the code, for more details about the ListView template, please refer to: &lt;a href=&quot;http://dflying.dflying.net/1/archive/113_display_listible_data_using_aspnet_atlas_listview_control.html&quot;&gt;Display Listible Data Using ASP.NET Atlas ListView Control&lt;/a&gt;&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- ScriptManager --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;atlas&lt;/span&gt;:ScriptManager &lt;span class=&quot;re0&quot;&gt;runat&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;server&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;ID&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;scriptManager&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Element for ListView (container) --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataContents&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Templates --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;style&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;visibility: hidden; display: none&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterTemplate&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;table&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;border&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;1&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;cellpadding&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;3&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;style&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;width:30em;&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;thead&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;a&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;href&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;#&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;sortId&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;ID&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/a&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;a&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;href&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;#&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;sortName&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;Name&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/a&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;a&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;href&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;#&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;sortTitle&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;Title&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/a&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/thead&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tbody&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterItemTemplateParent&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tr&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterItemTemplate&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterId&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterName&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterTitle&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tbody&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/table&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;Time for the Atlas XML scripts. There are four sections of the script.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Section 1&lt;/strong&gt;. Atlas client side control DataSource, used to retrieve data from server.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;dataSource&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;autoLoad&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;serviceURL&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;SampleDataService.asmx&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;strong&gt;Section 2&lt;/strong&gt;. A DataView, used to paging the collection we get in Section 1.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;dataView&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;data&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;data&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/dataView&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;strong&gt;Section 3&lt;/strong&gt;. A ListView control, used to display our list.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;listView&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataContents&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;itemTemplateParentElementId&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterItemTemplateParent&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;filteredData&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;data&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;layoutTemplate&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;template&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;layoutElement&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterTemplate&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/layoutTemplate&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;itemTemplate&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;template&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;layoutElement&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterItemTemplate&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;label&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterId&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Id&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;text&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/label&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;label&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterName&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Name&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;text&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/label&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;label&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;masterTitle&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Title&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;text&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/label&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/template&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/itemTemplate&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/listView&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;strong&gt;Section 4&lt;/strong&gt;. Three Atlas controls with SortBehavior behavior, used to trigger the sorting.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;control&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;sortId&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;behaviors&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;sortBehavior&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataView&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;sortColumn&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Id&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/behaviors&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/control&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;control&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;sortName&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;behaviors&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;sortBehavior&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataView&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;sortColumn&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Name&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/behaviors&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/control&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;control&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;sortTitle&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;behaviors&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;sortBehavior&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataView&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;sortColumn&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Title&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/behaviors&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/control&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;Test in browser:&lt;/p&gt;
&lt;p&gt;Initial order:&lt;br /&gt;
&lt;img class=&quot;res_image&quot; style=&quot;MARGIN: 5px&quot; src=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=sort1.JPG&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Sort by Name – Ascending:&lt;br /&gt;
&lt;img class=&quot;res_image&quot; style=&quot;MARGIN: 5px&quot; src=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=sort2.JPG&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Sort by Name – Descending:&lt;br /&gt;
&lt;img class=&quot;res_image&quot; style=&quot;MARGIN: 5px&quot; src=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=sort3.JPG&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Source code for this demo can be downloaded here: &lt;a id=&quot;res_148&quot; href=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=SortBehaviorDemo.zip&quot; type=&quot;application/zip&quot;&gt;SortBehaviorDemo.zip&lt;/a&gt;&lt;/p&gt;</description>
   <link>http://dflying.dflying.net/1/archive/128_sorting_your_list_using_aspnet_atlas_sortbehavior.html</link>
      <pubDate>Wed, 19 Apr 2006 00:18:20 -0700</pubDate>   
  </item>
    <item>
   <title>Paging Your List Using ASP.NET Atlas PageNavigator Control</title>
   <description>&lt;p&gt;I want to introduce some of the more advanced Atlas &lt;b&gt;Sys.UI.Data&lt;/b&gt; controls in this series, including:&lt;/p&gt;&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.ListView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/113_display_listible_data_using_aspnet_atlas_listview_control.html&quot;&gt;Display Listible Data Using ASP.NET Atlas ListView Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.ItemView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/114_display_one_item_in_a_collection_using_aspnet_atlas_itemview_control.html&quot;&gt;Display One Item in a Collection using ASP.NET Atlas ItemView Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.DataNavigator&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/127_paging_your_list_using_aspnet_atlas_pagenavigator_control.html&quot;&gt;Paging Your List Using ASP.NET Atlas PageNavigator Control&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.SortBehavior&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/128_sorting_your_list_using_aspnet_atlas_sortbehavior.html&quot;&gt;Sorting Your List Using ASP.NET Atlas SortBehavior&lt;/a&gt; &lt;/li&gt;&lt;li&gt;&lt;b&gt;Sys.UI.Data.XSLTView&lt;/b&gt;: &lt;a href=&quot;http://dflying.dflying.net/1/archive/129_apply_xslt_to_xml_using_aspnet_atlas_xsltview_control.html&quot;&gt;Apply XSLT to XML Using ASP.NET Atlas XSLTView Control&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;This is the third post: &lt;a href=&quot;http://dflying.dflying.net/1/archive/127_paging_your_list_using_aspnet_atlas_pagenavigator_control.html&quot;&gt;Paging Your List Using ASP.NET Atlas PageNavigator Control&lt;/a&gt;&lt;/p&gt;&lt;br/&gt;&lt;link rel=&quot;stylesheet&quot; type=&quot;text/css&quot; href=&quot;http://dflying.dflying.net/plugins/plogeshi/styles/plogeshi.css&quot; /&gt;&lt;p&gt;Put all your records on one page will always be a bad idea especially you have hundreds of rows or more. Your user needs to scroll up and down the page, even uses Control + F to open a search box to find their interesting content. Some of the ASP.NET server controls have this functionality such as the DataGrid and GridView. And Atlas client side control&lt;b&gt; Sys.UI.Data.DataNavigator&lt;/b&gt;&lt;span&gt; also provides this feature on the client side, which is very useful and makes the life easier.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;DataNavigator control works with DataView control (see: &lt;a href=&quot;http://dflying.dflying.net/1/archive/125_introduction_to_atlas_controls_in_namespace_sysdata__dataview_and_datafilter.html&quot;&gt;Introduction to Atlas Controls in Namespace Sys.Data – DataView and DataFilter&lt;/a&gt;). We know that the DataView does not provide the page navigation methods, so we have to set the &lt;b&gt;pageIndex&lt;/b&gt; property of DataView manually to make the navigation work, which is rude and developers are easy to make mistakes such as forgetting to check the boundary of &lt;b&gt;pageIndex&lt;/b&gt;. That’s the reason why Atlas offers you the DataNavigator control, which acts as the proxy of DataView by providing navigation operations on the DataView.&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;DataNavigator object only has one property:&lt;/span&gt;&lt;/p&gt;
&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;dataView&lt;/b&gt;: A reference of DataView object that this DataNavigator operates on. You should always set this peoperty.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;Still, to use the DataNavigator, you have to provide some Atlas Buttons with some specified &lt;b&gt;commandName&lt;/b&gt; property values to trigger the paging operations. Also, the property &lt;b&gt;parent&lt;/b&gt; of these should be set to the DataNavigator to make sure that the DataNavigator can capture these commands.&lt;/p&gt;
&lt;p&gt;There are following five command name values you may choose. All the command name values are case insensitive.&lt;/p&gt;
&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;page&lt;/b&gt;: Switch current page index to the value specified in the command argument. This is almost as raw as the way by changing page index value directly.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;nextpage&lt;/b&gt;: Switch to the next page.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;previouspage&lt;/b&gt;: Switch to the previous page.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;firstpage&lt;/b&gt;: Switch to the first page.&lt;/li&gt;
&lt;li&gt;&lt;b&gt;lastpage&lt;/b&gt;: Switch to the last page.&lt;/li&gt;
&lt;/ol&gt;&lt;p /&gt;
&lt;p&gt;Ok for the introductions, let’s go through a demo to get familiar with the DataNavigator control.&lt;/p&gt;
&lt;p&gt;The first thing is to expose a Web Service for Atlas pages. Following is the source code for MyDataService.asmx and it is very easy to understand so I just skip the detailed introductions. It just simply returns a collection of 100 entries.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Collections&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Collections&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Generic&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;ComponentModel&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;IO&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Caching&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Services&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; &lt;span class=&quot;kw5&quot;&gt;System&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Services&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Protocols&lt;/span&gt;;
&lt;span class=&quot;kw1&quot;&gt;using&lt;/span&gt; Microsoft.&lt;span class=&quot;me1&quot;&gt;Web&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Services&lt;/span&gt;;
&amp;nbsp;
&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;// For simplicity this example demonstraes storing and  manipulating &lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;// the data objects in memory. A database can also be used.&lt;/span&gt;
&lt;span class=&quot;co1&quot;&gt;//&lt;/span&gt;
    
&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;WebService&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;Namespace&lt;/span&gt; = &lt;span class=&quot;st0&quot;&gt;&quot;http://tempuri.org/&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;WebServiceBinding&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;ConformsTo = WsiProfiles.&lt;span class=&quot;me1&quot;&gt;BasicProfile1_&lt;/span&gt;&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
&lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;class&lt;/span&gt; MyDataService : DataService
&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; List&amp;lt;Entry&amp;gt; _data;
    &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;object&lt;/span&gt; _dataLock = &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; &lt;span class=&quot;kw4&quot;&gt;object&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;static&lt;/span&gt; List&amp;lt;Entry&amp;gt; Data
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get
        &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_data == &lt;span class=&quot;kw1&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                &lt;span class=&quot;kw1&quot;&gt;lock&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_dataLock&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                    &lt;span class=&quot;kw1&quot;&gt;if&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;_data == &lt;span class=&quot;kw1&quot;&gt;null&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                        _data = &lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; List&amp;lt;Entry&amp;gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        &lt;span class=&quot;kw1&quot;&gt;for&lt;/span&gt; &lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; i = &lt;span class=&quot;nu0&quot;&gt;0&lt;/span&gt;; i &amp;lt; &lt;span class=&quot;nu0&quot;&gt;100&lt;/span&gt;; i++&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
                        &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
                            _data.&lt;span class=&quot;me1&quot;&gt;Add&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.google.com/search?q=new+msdn.microsoft.com&quot;&gt;&lt;span class=&quot;kw3&quot;&gt;new&lt;/span&gt;&lt;/a&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;i, &lt;span class=&quot;st0&quot;&gt;&quot;Dflying &quot;&lt;/span&gt; + i.&lt;span class=&quot;me1&quot;&gt;ToString&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;, &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;Format&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&quot;Dflying{0}@dflying.net&quot;&lt;/span&gt;, i.&lt;span class=&quot;me1&quot;&gt;ToString&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
                        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
                    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
                &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
            &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
            &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _data;
        &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectMethod&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;DataObjectMethodType.&lt;span class=&quot;me1&quot;&gt;Select&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt; SelectRows&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; MyDataService.&lt;span class=&quot;me1&quot;&gt;Data&lt;/span&gt;.&lt;span class=&quot;me1&quot;&gt;ToArray&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;class&lt;/span&gt; Entry
&lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; _name;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; _email;
    &lt;span class=&quot;kw1&quot;&gt;private&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; _id;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectField&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;true&lt;/span&gt;, &lt;span class=&quot;kw1&quot;&gt;true&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; Id
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _id; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        set &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; _id = value; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectField&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DefaultValue&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&quot;New row&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; Name
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _name; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        set &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; _name = value; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DataObjectField&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw1&quot;&gt;false&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#91;&lt;/span&gt;DefaultValue&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;st0&quot;&gt;&quot;&quot;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#93;&lt;/span&gt;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; Email
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        get &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; &lt;span class=&quot;kw1&quot;&gt;return&lt;/span&gt; _email; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
        set &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt; _email = value; &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        _id = -&lt;span class=&quot;nu0&quot;&gt;1&lt;/span&gt;;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&amp;nbsp;
    &lt;span class=&quot;kw1&quot;&gt;public&lt;/span&gt; Entry&lt;span class=&quot;br0&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span class=&quot;kw4&quot;&gt;int&lt;/span&gt; id, &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; name, &lt;span class=&quot;kw4&quot;&gt;string&lt;/span&gt; description&lt;span class=&quot;br0&quot;&gt;&amp;#41;&lt;/span&gt;
    &lt;span class=&quot;br0&quot;&gt;&amp;#123;&lt;/span&gt;
        _id = id;
        _name = name;
        _email = description;
    &lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;
&lt;span class=&quot;br0&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;Then the ASPX page, there are four sections in the ASPX page you need to consider:&lt;/p&gt;
&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;A ScriptManager control, which is required in every Atlas page.&lt;/li&gt;
&lt;li&gt;The place holder div (&amp;lt;div&amp;gt; with id &lt;b&gt;dataContents&lt;/b&gt;), where Atlas will place the rendered paged list in.&lt;/li&gt;
&lt;li&gt;A group of buttons (the command buttons) in a container div (the DataNavigator), which are used for implementing the page navigation.&lt;/li&gt;
&lt;li&gt;A hidden &amp;lt;div&amp;gt;, which is used to define the templates.&lt;/li&gt;
&lt;/ol&gt;&lt;p&gt;Here’s the code, for more details about the ListView template, please refer to: &lt;a href=&quot;http://dflying.dflying.net/1/archive/113_display_listible_data_using_aspnet_atlas_listview_control.html&quot;&gt;Display Listible Data Using ASP.NET Atlas ListView Control&lt;/a&gt; &lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- ScriptManager --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;atlas&lt;/span&gt;:ScriptManager &lt;span class=&quot;re0&quot;&gt;runat&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;server&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;ID&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;scriptManager&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Element for paged ListView (container) --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataContents&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- PageNavigator --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageNavigator&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;type&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;button&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnFirstPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;value&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;&amp;lt;&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;type&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;button&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnPrevPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;value&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;&amp;lt;&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblPageNumber&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; / &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblPageCount&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;input&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;type&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;button&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnNextPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;value&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;&amp;gt;&lt;/span&gt;&amp;quot; /&amp;gt;
    &lt;span class=&quot;sc3&quot;&gt;&amp;lt;input type=&quot;&lt;/span&gt;button&lt;span class=&quot;st0&quot;&gt;&quot; id=&quot;&lt;/span&gt;btnLastPage&lt;span class=&quot;st0&quot;&gt;&quot; value=&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&amp;gt;&amp;quot; /&amp;gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&amp;nbsp;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Templates --&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;style&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;visibility: hidden; display: none&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;table&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;myList_layoutTemplate&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;border&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;1&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;cellpadding&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;3&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;style&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;width:20em;&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;thead&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;No.&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Name&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Email&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/span&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/thead&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Repeat Template --&amp;gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tbody&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;myList_itemTemplateParent&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Repeat Item Template --&amp;gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;tr&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;myList_itemTemplate&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblIndex&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblName&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
                &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;span&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblEmail&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/td&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
            &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tr&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/tbody&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/table&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;coMULTI&quot;&gt;&amp;lt;!-- Empty Template --&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;div&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;myList_emptyTemplate&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
        No Data
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/div&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;Let’s look at the Atlas XML scripts. There are four sections of the script.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Section 1&lt;/strong&gt;. Atlas client side control DataSource, used to retrieve data from server. &lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;dataSource&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;autoLoad&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;true&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;serviceURL&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;MyDataService.asmx&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;strong&gt;Section 2&lt;/strong&gt;. A DataView, used to paging the collection we get in Section 1.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;dataView&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;pageSize&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;12&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;dataSource&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;data&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;data&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/dataView&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p /&gt;&lt;p&gt;&lt;strong&gt;Section 3&lt;/strong&gt;. DataNavigator control and buttons. Note here we have four navigation buttons with four kinds of &lt;b&gt;commandName&lt;/b&gt; properties and the &lt;b&gt;parent&lt;/b&gt; properties are all set to the DataNavigator object.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;dataNavigator&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageNavigator&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataView&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;button&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnFirstPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;parent&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageNavigator&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;command&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;FirstPage&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;button&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnPrevPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;parent&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageNavigator&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;command&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;PreviousPage&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;enabled&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;hasPreviousPage&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/button&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;button&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnNextPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;parent&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageNavigator&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;command&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;NextPage&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;enabled&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;hasNextPage&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/button&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;button&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;btnLastPage&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;parent&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageNavigator&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;command&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;LastPage&quot;&lt;/span&gt; &lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;&lt;strong&gt;Section 4&lt;/strong&gt;. Two labels show the page count and current page index.&lt;/p&gt;
&lt;/p&gt;
&lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;label&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblPageNumber&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;text&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageIndex&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;transform&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;Add&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/label&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;label&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;id&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;lblPageCount&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
        &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;binding&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataContext&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;view&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;property&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;text&quot;&lt;/span&gt; &lt;span class=&quot;re0&quot;&gt;dataPath&lt;/span&gt;=&lt;span class=&quot;st0&quot;&gt;&quot;pageCount&quot;&lt;/span&gt;&lt;span class=&quot;re2&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;
    &lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/bindings&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;
&lt;span class=&quot;sc3&quot;&gt;&lt;span class=&quot;re1&quot;&gt;&amp;lt;/label&lt;span class=&quot;re2&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/pre&gt;
&lt;p&gt;
&lt;p&gt;Ok, test in browser:&lt;br /&gt;
&lt;img class=&quot;res_image&quot; style=&quot;MARGIN: 5px&quot; src=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=datanavigator.JPG&quot; /&gt;&lt;/p&gt;
&lt;p&gt;Source code for this demo can be downloaded here: &lt;a id=&quot;res_143&quot; href=&quot;http://www.dflying.net/resserver.php?blogId=1&amp;resource=DataNavigatorDemo.zip&quot; type=&quot;application/zip&quot;&gt;DataNavigatorDemo.zip&lt;/a&gt;&lt;/p&gt;</description>
   <link>http://dflying.dflying.net/1/archive/127_paging_your_list_using_aspnet_atlas_pagenavigator_control.html</link>
      <pubDate>Mon, 17 Apr 2006 23:33:00 -0700</pubDate>   
  </item>
    <item>
   <title>Introduction to Atlas Controls in Namespace Sys.Data – DataView and DataFilter</title>
   <description>&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;This is the third, also the last part of introductions to Sys.Data controls. In my previous posts, we know how to get data from server side and store in client side by using DataSource controls and how to modify the data we get on client side by using DataTable object. We can display the data in the DataTable right now to user but in most cases we need to do some decorations before showing, for example, we may need to page our data if it contains thousands of rows, or our user may be only interested in some of the data such as Dflying’s data. That’s the reason why we have to introduce the DataView and DataFilter objects. Now let’s see how to decorate our data for UI controls by using DataView object and DataFilter object.&lt;/span&gt;&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Here are the properties of DataView object:&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;data&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The actual data for decorating. You should always set a DataTable get from DataSource control to this property to let the DataView know the source data.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;filteredData&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The filtered data. Such as the paged data or the sorted data.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;filters&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: A collection of DataFilter objects to filter the data. You can specify the DataView a collection of filters and they will be applied to your data one by one. For more information about DataFilter object, please see below.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;hasNextPage&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: Whether there’s a next page.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;hasPreviousPage&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: Whether there’s a previous page.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;length&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: How many rows in current page.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;pageCount&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: How many pages in current DataView.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;pageIndex&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: Current page index.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;pageSize&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: How many rows per page. You should set this property if you need to page your data.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;sortColumn&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The column you want to sort the rows by. You should set this property if you need the sort feature.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;sortDirection&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The directions you want to sort. Either Ascending (default value) or Descending. &lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;And DataView object has one method:&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;sort&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: Apply the sort operation according to &lt;b&gt;sortColumn&lt;/b&gt; property and &lt;b&gt;sortDirection&lt;/b&gt; property.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Remember you may need two additional controls in Sys.Data.UI namespace: DataNavigator and SortBehavior to help you with the paging and sorting issues. And for introductions and demos for DataView and these two controls, please be a little patient on my future posts.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Ok for the DataView object, let’s see the DataFilter object:&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;The Sys.Data.DataFilter class in Atlas is designed as the abstract base class of all the filters. It provides an abstract method &lt;b&gt;filter&lt;/b&gt; for the derived class to implement its specified filter rules.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Atlas provides one build-in filter – the PropertyFilter, which is used for filtering the items by one specified property and its value.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;PropertyFilter object has two peoperties:&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;property&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The property you want to apply the filter to.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;b&gt;&lt;span lang=&quot;EN-US&quot;&gt;value&lt;/span&gt;&lt;/b&gt;&lt;span lang=&quot;EN-US&quot;&gt;: The value whose specified property equals to will pass this filter.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;Demos for DataFilter object is coming soon.&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;span lang=&quot;EN-US&quot;&gt;At the end of this series let’s have a summary about the three parts of Atlas controls in namespace Sys.Data. Keep these in your mind will help a lot in future developing.&lt;/span&gt;&lt;/p&gt;&lt;ol&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;DataSource and XMLDataSource are used for getting data from server and store is on the client side.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;span&gt;&lt;span style=&quot;FONT: 7pt &#039;Times New Roman&#039;&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;DataTable, including DataRow and DataColumn, is the actual storage of client side data and you may modify the data as you with on the client side.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;/span&gt;&lt;span lang=&quot;EN-US&quot;&gt;DataView and DataFilter are used for decorating your data before displaying to user. These operations do not change the actually data but behave just like the SQL syntax &lt;b&gt;where&lt;/b&gt; and &lt;b&gt;order by&lt;/b&gt;.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;</description>
   <link>http://dflying.dflying.net/1/archive/125_introduction_to_atlas_controls_in_namespace_sysdata__dataview_and_datafilter.html</link>
      <pubDate>Sat, 15 Apr 2006 20:54:36 -0700</pubDate>   
  </item>
    <item>
   <title>Introduction to Atlas Controls in Namespace Sys.Data – DataColumn, DataRow and DataTable</title>
   <description>&lt;p&gt;In this post we are going to touch the key client side data components of Atlas – the DataTable, which is used to represent a tabular data structure. The DataTable object connects the actual data – the DataSource and the UI control – the ListView. It is the data field of a DataSource object, and can also be decorated by a DataView object by filtering and sorting the rows or doing the page navigations. Here Atlas also shares the ASP.NET/ADO.NET concepts: the Atlas DataSource is similar with ADO.NET SqlDataSource, the Atlas DataTable is similar with ADO.NET DataTable and the Atlas ListView is similar with ASP.NET ListView. Pretty easy to understand, isn&#039;t it? A DataTable contains a collection of DataColumn objects and a collection of DataRow objects, so let&#039;s begin with the DataColumn and DataRow.&lt;/p&gt;&lt;br/&gt;&lt;p&gt;&lt;b&gt;Sys.Data.DataColumn&lt;/b&gt;&lt;/p&gt;&lt;p&gt;The DataColumn object is really simple, only following properties:&lt;/p&gt;&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;columnName&lt;/b&gt;: Column name string.&lt;/li&gt;&lt;li&gt;&lt;b&gt;dataType&lt;/b&gt;: The type of data in this column.&lt;/li&gt;&lt;li&gt;&lt;b&gt;defaultValue&lt;/b&gt;: The default value in this column.&lt;/li&gt;&lt;li&gt;&lt;b&gt;isKey&lt;/b&gt;: Whether data in this column is the key of DataTable.&lt;/li&gt;&lt;li&gt;&lt;b&gt;readOnly&lt;/b&gt;: Whether data in this column is read only.&lt;/li&gt;&lt;/ol&gt;&lt;p&gt;&lt;b&gt;Sys.Data.DataRow&lt;/b&gt;&lt;/p&gt;&lt;p&gt;Sys.Data.DataRow object is a little bit of complex, there’s following properties:&lt;/p&gt;&lt;ol style=&quot;MARGIN-TOP: 0in&quot; type=&quot;1&quot;&gt;&lt;li&gt;&lt;b&gt;$isDirty&lt;/b&gt;: Whether this row is modified and not submitted to server yet.&lt;/li&gt;&