<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">
  <channel>
    <title>Developer Tools Blogs</title>
    <description>Developer Tools Blogs</description>
    <link>http://blogs.telerik.com/Blogs.aspx</link>
    <docs>http://backend.userland.com/rss</docs>
    <atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/Telerik" /><feedburner:info uri="telerik" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>Telerik</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
      <title>Minified CSS for your RadControls for ASP.NET AJAX. Enjoy!</title>
      <description>&lt;p&gt;One of the major goals web developers have when building web applications is performance. In general there are three areas that can be improved to achieve better overall performance:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;the server-side generation of the requested page,&lt;/li&gt; &lt;li&gt;the time it takes for the page and all of its web resources to be downloaded by the browser and&lt;/li&gt; &lt;li&gt;the performance of the rendered page in the browser.&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;RadControls for ASP.NET AJAX have been, are, and will continue to be Telerik's promise for easily building great ASP.NET web applications, which are both beautiful and performant. There was however a small area where the tools lacked behind - CSS minification. Until now, that is.&lt;/p&gt; &lt;p&gt;Starting with Q1 2012 BETA all of our CSS code, both embedded and on the CDN, ships minified. Here is a comparison of the sizes of the three largest &lt;em&gt;uncompressed&lt;/em&gt;&amp;nbsp;RadControls CSS files before and after minifying:&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;table class="MsoTableLightListAccent3" border="1" cellspacing="0" cellpadding="0" style="border: none;  border-collapse: collapse; border-image: initial;"&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top" style="width: 129.3pt; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; border-left-style: solid; border-left-color: #9bbb59; border-left-width: 1pt; border-bottom-style: none; border-bottom-width: initial; border-bottom-color: initial; border-right-style: none; border-right-width: initial; border-right-color: initial; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #9bbb59; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;&lt;span style="color: white;"&gt;CSS
            file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 121pt; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #9bbb59; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;&lt;span style="color: white;"&gt;Size
            (not minified)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 122.25pt; border-right-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #9bbb59; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;&lt;span style="color: white;"&gt;Size
            (minified)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 106.25pt; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; border-left-style: none; border-left-width: initial; border-left-color: initial; border-bottom-style: none; border-bottom-width: initial; border-bottom-color: initial; border-right-style: solid; border-right-color: #9bbb59; border-right-width: 1pt; background-image: initial; background-attachment: initial; background-origin: initial; background-clip: initial; background-color: #9bbb59; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;&lt;span style="color: white;"&gt;Size
            reduced by&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" style="width: 129.3pt; border-top-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #9bbb59; border-bottom-color: #9bbb59; border-left-color: #9bbb59; border-top-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; border-image: initial; border-right-style: none; border-right-width: initial; border-right-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;Scheduler.css&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 121pt; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; border-left-style: none; border-left-width: initial; border-left-color: initial; border-bottom-style: solid; border-bottom-color: #9bbb59; border-bottom-width: 1pt; border-right-style: none; border-right-width: initial; border-right-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;39.1KB&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 122.25pt; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; border-left-style: none; border-left-width: initial; border-left-color: initial; border-bottom-style: solid; border-bottom-color: #9bbb59; border-bottom-width: 1pt; border-right-style: none; border-right-width: initial; border-right-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;31.5KB&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 106.25pt; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-top-color: #9bbb59; border-right-color: #9bbb59; border-bottom-color: #9bbb59; border-top-width: 1pt; border-right-width: 1pt; border-bottom-width: 1pt; border-image: initial; border-left-style: none; border-left-width: initial; border-left-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;~19.5%&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" style="width: 129.3pt; border-top-style: none; border-right-style: none; border-bottom-style: none; border-width: initial; border-color: initial; border-image: initial; border-left-style: solid; border-left-color: #9bbb59; border-left-width: 1pt; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;Editor.css&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="border: none;  width: 121pt; border-image: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;31.3KB&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="border: none;  width: 122.25pt; border-image: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;22.8KB&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 106.25pt; border-top-style: none; border-bottom-style: none; border-left-style: none; border-width: initial; border-color: initial; border-image: initial; border-right-style: solid; border-right-color: #9bbb59; border-right-width: 1pt; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;~27%&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td valign="top" style="width: 129.3pt; border-top-style: solid; border-bottom-style: solid; border-left-style: solid; border-top-color: #9bbb59; border-bottom-color: #9bbb59; border-left-color: #9bbb59; border-top-width: 1pt; border-bottom-width: 1pt; border-left-width: 1pt; border-image: initial; border-right-style: none; border-right-width: initial; border-right-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;&lt;strong&gt;RibbonBar.css&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 121pt; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; border-left-style: none; border-left-width: initial; border-left-color: initial; border-bottom-style: solid; border-bottom-color: #9bbb59; border-bottom-width: 1pt; border-right-style: none; border-right-width: initial; border-right-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;28.5KB&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 122.25pt; border-top-style: solid; border-top-color: #9bbb59; border-top-width: 1pt; border-left-style: none; border-left-width: initial; border-left-color: initial; border-bottom-style: solid; border-bottom-color: #9bbb59; border-bottom-width: 1pt; border-right-style: none; border-right-width: initial; border-right-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;22.5KB&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;td valign="top" style="width: 106.25pt; border-top-style: solid; border-right-style: solid; border-bottom-style: solid; border-top-color: #9bbb59; border-right-color: #9bbb59; border-bottom-color: #9bbb59; border-top-width: 1pt; border-right-width: 1pt; border-bottom-width: 1pt; border-image: initial; border-left-style: none; border-left-width: initial; border-left-color: initial; padding-top: 0in; padding-right: 5.4pt; padding-bottom: 0in; padding-left: 5.4pt;"&gt; &lt;p class="MsoNormal" style="margin-bottom: 0.0001pt; line-height: normal;"&gt;~21%&lt;o:p&gt;&lt;/o:p&gt;&lt;/p&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/tbody&gt; &lt;/table&gt; &lt;p&gt;&lt;br /&gt; &lt;/p&gt; &lt;p&gt;As you can see these are relatively small files, and the rest of RadControls' style sheets are even smaller, so on a page with lots of RadControls the difference between not minified and minified CSS will be small, yet noticable.&lt;/p&gt; &lt;p&gt;For instance, in our Event Scheduler demo's &lt;a href="http://demos.telerik.com/aspnet-ajax/schedulebuilder/"&gt;front page&lt;/a&gt; the browser downloads 198.2KB of embedded, not minified CSS.&amp;nbsp;&lt;/p&gt; &lt;p&gt;&lt;img src="http://blogs.telerik.com:80//Libraries/TeamPulse_Team/not_minified_not_compressed.sflb?width=300&amp;amp;height=300&amp;amp;decreaseOnly=true" alt="Not minified CSS" /&gt;&lt;/p&gt; &lt;p&gt;With minification you save 32.9KB.&lt;/p&gt; &lt;p&gt;&lt;img src="http://blogs.telerik.com:80//Libraries/ASP_NET_AJAX/minified_not_compressed.sflb?width=300&amp;amp;height=300&amp;amp;decreaseOnly=true" alt="Minified CSS" /&gt;&lt;/p&gt; &lt;p&gt;However, in large real-world web applications there are lot more custom style sheets. Then it is always a good idea to squeeze out those extra bytes and reduce the size of your styles (and scripts for that matter) as much as possible by minifying and compressing. &lt;/p&gt; &lt;p&gt;In addition you can use RadStyleSheetManager to combine external style sheets so that you can reduce all CSS requests, embedded and external, into one!&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.telerik.com/account/your-products/trial-product-versions/download-trial-file.aspx?fileid=12151&amp;amp;pid=0&amp;amp;dispkey=True" title="Telerik' AJAX Q1 2012 Beta is here" target="blank" re_target="blank"&gt;&lt;img src="/Libraries/ASP_NET_AJAX/Blogs_banners-AJAX.sflb" alt="Telerik ASP.NET AJAX Q1 2012 Beta is here" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&lt;br /&gt; &lt;/p&gt; &lt;div id="author" class="vcard"&gt; &lt;h2&gt;About the author&lt;/h2&gt; &lt;img class="photo" src="http://blogs.telerik.com/Libraries/ASP_NET_AJAX/SimeonPanayotov.sflb" alt="Simeon Panayotov" /&gt; &lt;h3 class="fn"&gt;Simeon Panayotov&lt;/h3&gt; &lt;p&gt;
Simeon Panayotov is a team lead at one of Telerik’s ASP.NET AJAX teams, where he works mainly on the navigational controls, RadRibbonBar,&amp;nbsp;RadScriptManager and RadStyleSheetManager. He joins Telerik in 2008 and ever since his professional career started back in 2005, he has been focused on ASP.NET, HTML and JavaScript. He has interests in the field of user interface design and user experience and&amp;nbsp;is open to working with every technology that helps solving the problem at hand.&lt;/p&gt; &lt;p class="twit"&gt;&lt;iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/follow_button.1326407570.html#_=1328895951021&amp;amp;_version=2&amp;amp;enableNewSizing=false&amp;amp;id=twitter-widget-4&amp;amp;lang=en&amp;amp;screen_name=simeonpanayotov&amp;amp;show_count=false&amp;amp;size=m" class="twitter-follow-button" style="height: 20px; width: 300px;" title="Twitter Follow Button"&gt;&lt;/iframe&gt; &lt;script src="http://platform.twitter.com/widgets.js" type="text/javascript"&gt;&lt;/script&gt; &lt;/p&gt; &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/5Lk2MhkdadI" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/5Lk2MhkdadI/minified-css-for-your-radcontrols-for-asp-net-ajax-enjoy.aspx</link>
      <author>ASP.NET AJAX Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-10/minified-css-for-your-radcontrols-for-asp-net-ajax-enjoy.aspx</comments>
      <guid isPermaLink="false">c9021edb-b699-4ae6-87c6-b1a2cfe8f5fa</guid>
      <pubDate>Fri, 10 Feb 2012 19:41:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-10/minified-css-for-your-radcontrols-for-asp-net-ajax-enjoy.aspx</feedburner:origLink></item>
    <item>
      <title>Q1 Webinar Week Final Countdown is Starting Now!</title>
      <description>&lt;p&gt;Hey fellow Ninjas, &lt;a href="http://www.telerik.com/support/webinars.aspx" title="Q1 2012 Webinar Week"&gt;Q1 2012 Webinar Week&lt;/a&gt; is quickly approaching! This is just a reminder that the first event of the webinar series starts in less than 10 days, so if you haven’t registered yet, be sure to &lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;book your seat right away&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;With the first release of 2012, Telerik will provide yet another set of high-quality updates to tools that help you sharpen your .NET skills. An official launch of JustDecompile, the wildly popular .NET decompiler, a bunch of new betas for the XAML developers and a brand new End-User Report Designer now included in the Telerik Reporting Suite, are only a few of the highlights! We can’t say how excited we are that we have once again managed to bring you many of the cool features you have requested. To top it off, you could be the lucky webinar attendee who will win an Ultimate Collection license (worth $1,999), which we are giving away to celebrate the latest release. Looking forward to seeing you all there!&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;Register now for one or all of the upcoming webinars&lt;/a&gt;&lt;/p&gt; &lt;p style="text-align: center;"&gt;&lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;&lt;img alt="" src="http://blogs.telerik.com/Libraries/MetaBlogLib/Blog_Image-ninja_with_text.sflb" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/WOAOz_63QKM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/WOAOz_63QKM/q1-webinar-week-final-countdown-is-starting-now.aspx</link>
      <author>Marketing Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-10/q1-webinar-week-final-countdown-is-starting-now.aspx</comments>
      <guid isPermaLink="false">b42b7de2-c880-4c50-9bea-256e3f290e2a</guid>
      <pubDate>Fri, 10 Feb 2012 15:40:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-10/q1-webinar-week-final-countdown-is-starting-now.aspx</feedburner:origLink></item>
    <item>
      <title>Telerik OpenAccess ORM – What’s coming in Q1 2012 release</title>
      <description>&lt;p&gt;As many of you probably know already, we are going to release Q1 a month earlier this year (in mid-February). As the release date is approaching we are proud to show you the improvements in the product we have developed in the last several months.&lt;/p&gt; &lt;p&gt;Following your feedback and advices, we have dedicated this version mostly to usability and optimization of the time you spend working with large Domain Models.
&lt;/p&gt; &lt;h3&gt;Batch Operations Dialog&lt;/h3&gt; &lt;p&gt;We have acknowledged that if you have hundreds of domain classes or tables with plenty of columns, modifying your model can sometimes become a boring and lengthy task. In order to reduce a sequence of many edit operations on your model to a single click action, we have developed the Batch Operations dialog. It allows you to:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Have an overview of your entire model or a selected subset of it through a simplified data grid. All the classes are shown as mapped to tables, and all the properties are matched with the columns.&lt;/li&gt; &lt;li&gt;Easily search, filter and sort your model items&lt;/li&gt; &lt;li&gt;Execute a batch operation through selecting a subset of items, choosing the appropriate operation from a combo box, configuring your change and clicking the Execute button. Batch operation types include changing the namespace, renaming, changing property and column types, etc&lt;/li&gt; &lt;li&gt;Quickly change class and property names directly into the grid
    &lt;/li&gt; &lt;/ul&gt; &lt;p&gt;&lt;a&gt;&lt;img alt="" src="http://blogs.telerik.com/Libraries/MetaBlogLib/BatchOperationsCLR-small.sflb" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;h3&gt;Context API Enhancements&lt;/h3&gt; &lt;p&gt;In order to bring forward all the API functionality you need and make it more straight-forward to use, we have added some new features in the Context API. You will be able to easily access the object tracking, flush your changes without ending a transaction, dispose a Database object or use the L2 cache functionality. In addition, you will be able to make your context read-only to avoid unwanted changes to the database - by just setting a single flag to True. &lt;/p&gt; &lt;h3&gt;Fluent API Code Generation&lt;/h3&gt; &lt;p&gt;We have not forgotten the Fluent API fans either. Many of you are working in a Database First scenario where the database is already designed, and you need to add the entire mapping by coding. While this is doable with dozens of tables, it is not so easy if you have hundreds of them. Our main goal is saving you time and making your life easier, so we have released the Fluent API Code Generation functionality. Now besides the XML and Attributes mapping types in the Add Domain Model wizard, you can also choose Fluent Mapping. &lt;/p&gt; &lt;p&gt;&lt;img alt="" src="http://blogs.telerik.com/Libraries/MetaBlogLib/FluentAPICodeGen-new.sflb" /&gt;&lt;/p&gt; &lt;p&gt;In this case, instead of an OpenAccessContext, you will get an auto-generated FluentMappingContext with all the default mapping configurations coded for you. After the code generation you are free to enhance the code with your specific requirements, which makes it a great starting point for your Fluent API implementation.&lt;/p&gt; &lt;h3&gt;Other improvements&lt;/h3&gt; &lt;p&gt;Apart from the major features described above, we have made several other improvements you might find useful:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;The OpenAccess Profiler can now store your trace data locally for analysis - just by clicking the new Save button you will have the trace saved in a file you choose&lt;/li&gt; &lt;li&gt;Defining Fetch Strategy for each LINQ query is going be added to your current capabilities of doing so for the entire context. &lt;/li&gt; &lt;li&gt;After we have presented the ASP.NET Dynamic Data wizard in Q3 2011, we are now bringing this story one step further with the Telerik OpenAccess Dynamic Data Application project template. You won’t have to do any additional setup in order to start creating your data-driven application.&lt;/li&gt; &lt;li&gt;If you are working with an Oracle database, you can now return even REF cursors from your stored procedures – OpenAccess will automatically generate a method reading the result set and return it to your client code.
    &lt;/li&gt; &lt;/ul&gt; &lt;p style="text-align: center;"&gt;&lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;&lt;img alt="" src="http://blogs.telerik.com/Libraries/MetaBlogLib/Blog_Image-ninja_with_text.sflb" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The latest Telerik release is just around the corner and we have tons of new stuff to show off. If you are eager to see the new bits and sharpen your .NET skills, be sure to sign up for &lt;a title="Release Webinar Week" href="http://www.telerik.com/support/webinars.aspx"&gt;Release Webinar Week&lt;/a&gt;. This 3-day event is packed with hour-long webinar sessions on the coolest new features shipping with the Q1 2012 release.  Release Webinar Week will be held on February 20 - 22, so mark your calendars. &lt;/p&gt; &lt;p&gt;One lucky winner from each webinar will leave with a Telerik Ultimate Collection license worth $1999. To enter the drawing and participate in the Q&amp;amp;A session, you must attend the live webinar.
&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/iLowxOycLGE" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/iLowxOycLGE/telerik-openaccess-orm-what-s-coming-in-q1-2012-release.aspx</link>
      <author>Marketing Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-09/telerik-openaccess-orm-what-s-coming-in-q1-2012-release.aspx</comments>
      <guid isPermaLink="false">f4157322-ec33-4768-877c-d53c9ab6dad0</guid>
      <pubDate>Fri, 10 Feb 2012 13:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-09/telerik-openaccess-orm-what-s-coming-in-q1-2012-release.aspx</feedburner:origLink></item>
    <item>
      <title>XAMLflix Marches On with RadScheduleView for Silverlight and WPF</title>
      <description>&lt;br /&gt; &lt;p&gt;It's Thursday again, which means we're ready for another installment of...&lt;/p&gt; &lt;br /&gt; &lt;p&gt;&lt;strong&gt;XAMLflix!&lt;/strong&gt;&lt;/p&gt; &lt;br /&gt; &lt;p&gt;If you haven't tuned in over the last few weeks to our&amp;nbsp;&lt;a href="http://blogs.telerik.com/evanhutnick/posts/12-01-26/introducing-xamlflix---starting-with-radchartview-for-silverlight-and-wpf.aspx" title="XAMLflix - RadChartView"&gt;RadChartView&lt;/a&gt; and&amp;nbsp;&lt;a href="http://blogs.telerik.com/michaelcrump/posts/12-02-02/xamlflix-continues-with-radbarcode-for-silverlight-and-wpf.aspx" title="XAMLflix - RadBarCode"&gt;RadBarCode&lt;/a&gt; posts, my partner in crime (Michael Crump) and I have been working on a new initiative to help accelerate your education when it comes to the RadControls for Silverlight and RadControls for WPF control suites.  XAMLflix is intended to deliver quick, to-the-point videos highlighting features and functionality of our controls alongside sample projects with the exact code you are seeing in the videos.  One step better, since our Silverlight and WPF controls derive from a common code-base and share a common API, each solution contains both a Silverlight and a WPF project so that regardless of which XAML platform you are using you can benefit from this series.  So before you read on, make sure you've got the latest and greatest versions of our RadControls for&amp;nbsp;&lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=571"&gt;Silverlight&lt;/a&gt; and &lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=601"&gt;WPF&lt;/a&gt;, because we're going to be...&lt;/p&gt; &lt;br /&gt; &lt;p&gt;&lt;strong&gt;Getting to Know RadScheduleView&lt;/strong&gt;&lt;/p&gt; &lt;br /&gt; &lt;p&gt;If you haven't had the pleasure of using RadScheduleView, this series is just the right thing for you.  Serving as a full re-write of our old popular RadScheduler control, RadScheduleView is built with performance and flexibility in mind to enable both simple and complex scheduling scenarios in your XAML applications.  Without further delay, lets dive into what we have this week:&lt;/p&gt; &lt;br /&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="http://tv.telerik.com/watch/silverlight/getting-started-with-radscheduleview-for-silverlight-wpf"&gt;&lt;b&gt;Getting Started with RadScheduleView&lt;/b&gt;&lt;/a&gt;&amp;nbsp;- A quick walkthrough that introduces you to RadScheduleView, adding view definitions, and how to start working with Appointments. (&lt;a href="http://blogs.telerik.com:80//Libraries/Evan_s_Documents/RadScheduleView_GettingStarted.sflb" target="_blank"&gt;Download the Project&lt;/a&gt;)&lt;/li&gt; &lt;li&gt;&lt;a href="http://tv.telerik.com/watch/silverlight/using-custom-appointments-in-radscheduleview"&gt;&lt;b&gt;Using Custom Appointments&lt;/b&gt;&lt;/a&gt;&amp;nbsp;- Diving a little deeper, we take a look at how you can implement a custom appointment type as well as how to modify the built-in templates to display your custom values within RadScheduleView. (&lt;a href="http://blogs.telerik.com:80//Libraries/Evan_s_Documents/RadScheduleView_CustomAppt.sflb" target="_blank"&gt;Download the Project&lt;/a&gt;)&lt;/li&gt; &lt;li&gt;&lt;a href="http://tv.telerik.com/watch/silverlight/adding-resources-to-radscheduleview"&gt;&lt;b&gt;Adding Resources&lt;/b&gt;&lt;/a&gt;&amp;nbsp;- One of the best things about RadScheduleView is complex support for adding resources to appointments.  Here we take a look at how you can quickly and easily tap into this functionality by adding resources to your implementation. (&lt;a href="http://blogs.telerik.com:80//Libraries/Evan_s_Documents/RadScheduleView_AddingResources.sflb" target="_blank"&gt;Download the Project&lt;/a&gt;)&lt;/li&gt; &lt;li&gt;&lt;a href="http://tv.telerik.com/watch/silverlight/resource-grouping-with-radscheduleview"&gt;&lt;b&gt;Implementing Resource Grouping&lt;/b&gt;&lt;/a&gt;&amp;nbsp;- Building on what we learned in the last video, we see how we can enable complex grouping scenarios with our resources within RadScheduleView. (&lt;a href="http://blogs.telerik.com:80//Libraries/Evan_s_Documents/RadScheduleView_AddingResources.sflb" target="_blank"&gt;Download the Project - Same as Adding Resources since this builds on that project!&lt;/a&gt;)&lt;/li&gt; &lt;li&gt;&lt;a href="http://tv.telerik.com/watch/silverlight/resource-filtering-with-radscheduleview"&gt;&lt;b&gt;Creating a Custom Resource Filter&lt;/b&gt;&lt;/a&gt;&amp;nbsp;- Last but certainly not least, learn how a RadComboBox and a little bit of code can create a custom filter scenario for use with resources in RadScheduleView. (&lt;a href="http://blogs.telerik.com:80//Libraries/Evan_s_Documents/RadScheduleView_ResourceFiltering.sflb" target="_blank"&gt;Download the Project&lt;/a&gt;)&lt;/li&gt; &lt;/ul&gt; &lt;br /&gt; &lt;p&gt;&lt;strong&gt;Wrap-Up&lt;/strong&gt;&lt;/p&gt; &lt;br /&gt; &lt;p&gt;So grab a cup of coffee, take these RadScheduleView videos for a spin, and don't forget to download your copies of the RadControls for&amp;nbsp;&lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=571"&gt;Silverlight&lt;/a&gt; and&amp;nbsp;&lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=601"&gt;WPF&lt;/a&gt; so you can run the samples.  And of course, keep in mind that &lt;a href="http://www.telerik.com/support/webinars.aspx" title="Q1 2012 Webinar Week"&gt;Q1 2012 Webinar Week is approaching quickly&lt;/a&gt;, so grab your seat to check out the latest and greatest across the full Telerik portfolio.  Hope to see you there, and stay tuned for more XAMLflix next week!&lt;/p&gt; &lt;br /&gt; &lt;p&gt;&lt;a href="http://www.twitter.com/evanhutnick" title="Evan Hutnick on Twitter!"&gt;@EvanHutnick&lt;/a&gt;&lt;/p&gt; &lt;br /&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/R8SX3f-FvBc" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/R8SX3f-FvBc/xamlflix-marches-on-with-radscheduleview-for-silverlight-and-wpf.aspx</link>
      <author>Evan Hutnick</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-09/xamlflix-marches-on-with-radscheduleview-for-silverlight-and-wpf.aspx</comments>
      <guid isPermaLink="false">26b9a967-fefd-4a2a-87ec-04b793b8c649</guid>
      <pubDate>Thu, 09 Feb 2012 20:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-09/xamlflix-marches-on-with-radscheduleview-for-silverlight-and-wpf.aspx</feedburner:origLink></item>
    <item>
      <title>Introducing Printing Support for GridView and Scheduler for WinForms</title>
      <description>&lt;p&gt;Have you ever wondered how to print your RadGridView and RadScheduler instances? I guess you have. Yet, &lt;a target="_blank" href="http://www.telerik.com/support/pits.aspx#/details/Issue=3362"&gt;this is one of the most voted features&lt;/a&gt; in our Public Issue Tracking System. The good news is that Q1 2011 is close and printing support for RadGridView and RadScheduler will be a part of it. &lt;/p&gt; &lt;p&gt;This support will allow the end-user to directly pass RadGridView and RadScheduler data to the printer. S\he does not need to export the data to other formats in advance (PDF, Excel, etc.) in order to to print it, nor should s/he &lt;a href="http://www.guzer.com/pictures/blonde_printer.jpg" target="_blank"&gt;scan his\her monitor&lt;/a&gt; :-)&lt;/p&gt; &lt;p&gt;As always, we’ve made the printing support feature-rich, full of useful tweaks that will produce the right results even for the most pretentious end-users. Common features between RadGridView and RadScheduler printing support are:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Page headers, page footers;&lt;/li&gt; &lt;li&gt;Watermarks; &lt;/li&gt; &lt;li&gt;Paper size settings; &lt;/li&gt; &lt;li&gt;Print preview dialogs:&lt;br /&gt;
    &amp;nbsp;&lt;br /&gt; &lt;img alt="" src="http://blogs.telerik.com/Libraries/MetaBlogLib/PrintPreview.sflb" /&gt;&amp;nbsp;
    &lt;/li&gt; &lt;/ul&gt; &lt;p&gt;Of course, each control has its own specifics, and so is the respective print support.
&lt;/p&gt; &lt;p&gt;RadGridView supports printing of all types of view definitions. You can also print:&amp;nbsp;
&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Grouped grid; &lt;/li&gt; &lt;li&gt;Summaries; &lt;/li&gt; &lt;li&gt;Hidden rows, hidden columns; &lt;/li&gt; &lt;li&gt;Print headers on each page.
    &lt;/li&gt; &lt;/ul&gt; &lt;p&gt;RadScheduler on the other hand supports four different print styles, similar to the Outlook ones:DailyStyle, WeeklyStyle, MonthlyStyle, DetailsStyle. In all these modes you can add to your pages an area for handwritten notes or a date header with a small calendar that shows the busy days. You can also print a single view on two pages which will grant you more available space and allow you to organize the printouts in a folder or notebook.&lt;/p&gt; &lt;p&gt;We are sure you are eager to start printing and you will be able to do so at &lt;strong&gt;the end of the next week&lt;/strong&gt;. &lt;/p&gt; &lt;p style="text-align: center;"&gt;&lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;&lt;img alt="" src="http://blogs.telerik.com/Libraries/MetaBlogLib/Blog_Image-ninja_with_text.sflb" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;p&gt;The latest Telerik release is just around the corner and we have tons of new stuff to show off. If you are eager to see the new bits and sharpen your .NET skills, be sure to sign up for &lt;a href="http://www.telerik.com/support/webinars.aspx" title="Release Webinar Week"&gt;Release Webinar Week&lt;/a&gt;. This 3-day event is packed with hour-long webinar sessions on the coolest new features shipping with the Q1 2012 release.  Release Webinar Week will be held on February 20 – 22, so mark your calendars. &lt;/p&gt; &lt;p&gt;One lucky winner from each webinar will leave with a Telerik Ultimate Collection license worth $1999. To enter the drawing and participate in the Q&amp;amp;A session, you must attend the live webinar.
&lt;/p&gt; &lt;p&gt;Webinar Schedule and Registration Link:  &lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;http://www.telerik.com/support/webinars.aspx&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/VDlPyjJyJb4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/VDlPyjJyJb4/introducing-printing-support-for-gridview-and-scheduler-for-winforms.aspx</link>
      <author>Marketing Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-08/introducing-printing-support-for-gridview-and-scheduler-for-winforms.aspx</comments>
      <guid isPermaLink="false">4f9e13b3-e7bf-4364-ac7b-12242ed9946b</guid>
      <pubDate>Thu, 09 Feb 2012 14:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-08/introducing-printing-support-for-gridview-and-scheduler-for-winforms.aspx</feedburner:origLink></item>
    <item>
      <title>Reset PageNumber per Report Group</title>
      <description>&lt;ul style="list-style: square outside url(/libraries/stevetsokev/download.sflb);"&gt; &lt;li&gt;&lt;a href="http://blogs.telerik.com:80//Libraries/SteveTsokev/ResetPageNumberPerGroup.sflb"&gt;Download Telerik_Reporting_Reset_PageNumber_per_Group (C#) - 4.72 KB&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;" id="internal-source-marker_0.1239790975571945"&gt;In Telerik Reporting, the &lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: bold; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;PageNumber&lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;
object can only be used in the page header and page footer sections. It
contains the current page number and its value is increased with one
for every new page. In some scenarios, it is useful to alter the page
number based on a condition and the most frequent scenario being asked
is resetting the &lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: bold; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;PageNumber &lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;after each group.&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;" id="internal-source-marker_0.1239790975571945"&gt;The powerful expression engine of &lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: bold; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;Telerik Reporting&lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt; allows you to accomplish this easily with the help of &lt;/span&gt;&lt;a href="http://www.telerik.com/help/reporting/expressions-functions.html"&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: underline; vertical-align: baseline; font-family: arial; color: #1155cc;"&gt;page aggregates&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt; and tiny bit of code.&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;Basically
the idea is to check what is the last group on a page and if it has
changed, then we reset the page number; otherwise simply advance the
page counter.&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;In order to get the last group on the current page we need an expression like this:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: bold; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;=PageExec('detail', Last(Fields.ProductCategory))&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;which
executes the &lt;strong&gt;Last()&lt;/strong&gt; aggregate function against the data on the current
page with the detail section being the scope (specified by the 1st
argument of the &lt;strong&gt;PageExec&lt;/strong&gt; function).&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;Having
the last product category per page we need to perform a simple logic
that will find if we are moving to a new group or keeping with the
current. In order to avoid any concurrent issues we choose to persist
the page calculation state in the current report instance. To do so we
use instance function instead of the globally scoped static (Share in
VisualBasic.NET) functions:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: courier new; color: #000000;"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;namespace&lt;/code&gt; &lt;code style="color: #000000;"&gt;Telerik.Reporting.Examples.CSharp&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;using&lt;/code&gt; &lt;code style="color: #000000;"&gt;System;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;public&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;partial&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;class&lt;/code&gt; &lt;code style="color: #000000;"&gt;ResetPageNumberPerGroup : Telerik.Reporting.Report&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;public&lt;/code&gt; &lt;code style="color: #000000;"&gt;ResetPageNumberPerGroup()&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #000000;"&gt;InitializeComponent();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;int&lt;/code&gt; &lt;code style="color: #000000;"&gt;currentPageNumber;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;string&lt;/code&gt; &lt;code style="color: #000000;"&gt;currentGroup;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;public&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;int&lt;/code&gt; &lt;code style="color: #000000;"&gt;MyPageNumber(&lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;string&lt;/code&gt; &lt;code style="color: #000000;"&gt;lastGroupOnPage)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;if&lt;/code&gt; &lt;code style="color: #000000;"&gt;(&lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.currentGroup != lastGroupOnPage)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 48px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.ResetPageNumbering(lastGroupOnPage);&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;else&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 48px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.NextPageNumber();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;return&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.currentPageNumber;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;void&lt;/code&gt; &lt;code style="color: #000000;"&gt;ResetPageNumbering(&lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;string&lt;/code&gt; &lt;code style="color: #000000;"&gt;lastGroupOnPage)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.currentPageNumber = 1;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.currentGroup = lastGroupOnPage;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;void&lt;/code&gt; &lt;code style="color: #000000;"&gt;NextPageNumber()&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px ! important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;this&lt;/code&gt;&lt;code style="color: #000000;"&gt;.currentPageNumber++;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px ! important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: courier new; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;Finally we combine the two parts in a single expression and display it in a TextBox:&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: bold; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;=ReportItem.Report.ItemDefinition.MyPageNumber(PageExec("detail", Last(Fields.ProductCategory)))&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;where &lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: bold; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;ReportItem.Report.ItemDefinition.MyPageNumber&lt;/span&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt; is the instance function we’ve already defined in our report definition.&lt;/span&gt;&lt;br /&gt; &lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;"&gt;You can use this expression instead of the built-in &lt;strong&gt;PageNumber&lt;/strong&gt; object in page sections only.&lt;/span&gt; &lt;p&gt;&lt;span style="font-size: 15px; background-color: transparent; font-weight: normal; font-style: normal; font-variant: normal; text-decoration: none; vertical-align: baseline; font-family: arial; color: #000000;" id="internal-source-marker_0.1239790975571945"&gt;Here
is a screenshot from the sample project attached to this blog post that
shows the “group” page number in the page header section (Orange) and
the “report” page number in the page footer section (GreenYellow): &amp;nbsp;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;img alt="reset page number" src="http://blogs.telerik.com:80//Libraries/SteveTsokev/ResetPageNumberGroup.sflb" /&gt;&lt;br /&gt; &lt;br /&gt; &lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/_OSCzpR_pYI" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/_OSCzpR_pYI/reset-pagenumber-per-report-group.aspx</link>
      <author>Reporting Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-07/reset-pagenumber-per-report-group.aspx</comments>
      <guid isPermaLink="false">16e3f4c8-1703-481e-bb22-e31ccf9c9d9c</guid>
      <pubDate>Thu, 09 Feb 2012 13:45:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-07/reset-pagenumber-per-report-group.aspx</feedburner:origLink></item>
    <item>
      <title>Getting Started with KendoUI and OpenAccess ORM</title>
      <description>&lt;p&gt;As many of you may know, &lt;a href="http://www.kendoui.com/" target="_blank" re_target="_blank"&gt;KendoUI&lt;/a&gt; is a really awesome new JavaScript framework that combines everything needed for modern JS development into one sweet package.&amp;nbsp; One of the features it provides is the ability to bind different UI controls to various data sources; so in this blog I will show you how &lt;a href="http://www.telerik.com/products/orm.aspx" target="_blank" re_target="_blank"&gt;OpenAccess ORM&lt;/a&gt; can be leveraged on the backend, and &lt;a href="http://www.kendoui.com/" target="_blank" re_target="_blank"&gt;KendoUI&lt;/a&gt; can take care of the front end!&lt;/p&gt; &lt;h2&gt;Getting Set Up&lt;/h2&gt; &lt;p&gt;To get started create a new &lt;strong&gt;ASP.Net&lt;/strong&gt;&amp;nbsp;&lt;strong&gt;Empty Web Application. &lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_2.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb.sflb" width="402" height="279" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;span style="font-size: 12px; color: #808080;"&gt;Note: You can really use any web based project template you like, in this walkthrough I just chose to start with nothing. :)&lt;/span&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Once the project loads, fire up the &lt;a href="http://nuget.org/" target="_blank" re_target="_blank"&gt;NuGet&lt;/a&gt; Package Manager Console.&lt;/p&gt; &lt;p&gt;Add JQuery to the project using the command:&lt;/p&gt; &lt;p&gt;&lt;em&gt;Install-Package jQuery&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Add KendoUI to the project using the command:&lt;/p&gt; &lt;p&gt;&lt;em&gt;Install-Package KendoUIWeb&lt;/em&gt;&lt;/p&gt; &lt;p&gt;Once you run both of these NuGet commands, the solution explorer should look like this:&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_28.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_13.sflb" width="244" height="211" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Now we are ready to build the OpenAccess ORM model!&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 12px; color: #808080;"&gt;&lt;em&gt;Note: If you are not familiar with NuGet, or would rather just download, and add the needed files manually.&amp;nbsp; KendoUI is available &lt;/em&gt;&lt;/span&gt;&lt;a href="http://www.kendoui.com/get-kendo-ui.aspx" target="_blank" re_target="_blank"&gt;&lt;span style="font-size: 12px;"&gt;&lt;em&gt;here&lt;/em&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: 12px; color: #808080;"&gt;&lt;em&gt;, and Jquery is available &lt;/em&gt;&lt;/span&gt;&lt;a href="http://jquery.com/" target="_blank" re_target="_blank"&gt;&lt;span style="font-size: 12px;"&gt;&lt;em&gt;here&lt;/em&gt;&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size: 12px; color: #808080;"&gt;&lt;em&gt;.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt; &lt;h2&gt;Building the model&lt;/h2&gt; &lt;p&gt;To build an OpenAccess ORM data model, right click on the web project, navigate to &lt;strong&gt;Add &lt;/strong&gt;&amp;gt; &lt;strong&gt;New Item&lt;/strong&gt;, then select &lt;strong&gt;Telerik OpenAccess Domain Model&lt;/strong&gt;. &lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 12px; color: #808080;"&gt;&lt;em&gt;Note: If you do not have OpenAccess ORM installed, you can get the trial edition &lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=638" target="_blank" re_target="_blank"&gt;here&lt;/a&gt;.&lt;/em&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_8.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_3.sflb" width="389" height="211" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Make sure to give the model a name, and then click &lt;strong&gt;Add&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;In the next window select &lt;strong&gt;Populate from Database&lt;/strong&gt;, and click &lt;strong&gt;Next&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_10.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_4.sflb" width="331" height="255" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Set up a connection to NorthwindOA, which is installed with OpenAccess, and then click next.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_12.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_5.sflb" width="337" height="259" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;At this point go ahead and include all tables from the database in the data model.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_16.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_7.sflb" width="337" height="259" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Click finish, and step 2 is done!&amp;nbsp; The data model is ready to be used.&amp;nbsp; The next step is to expose this data model through a service layer.&lt;/p&gt; &lt;h2&gt;Building the Service Layer&lt;/h2&gt; &lt;p&gt;Prepare yourself - this is the most &lt;strong&gt;difficult&lt;/strong&gt; part!&amp;nbsp; I’m kidding…&lt;strong&gt;Perform a build&lt;/strong&gt; on the application, and right click on the .rlinq file in the solution explorer. Select &lt;strong&gt;Generate OpenAccess Domain Model Service…&lt;/strong&gt;, and the domain service wizard will fire up. &lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_18.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_8.sflb" width="208" height="244" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;&lt;em&gt;&lt;span style="font-size: 12px; color: #808080;"&gt;Note: please ensure you &lt;strong&gt;build&lt;/strong&gt; the project before you launch the wizard.&amp;nbsp; If you do not do this, you will not be able to see the domain model in the service wizard as shown below.&lt;/span&gt;&lt;/em&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_20_1.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_9.sflb" width="244" height="188" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Select the NorthwindOA context in the wizard, and click Next.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_22.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_10.sflb" width="297" height="229" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;This screen allows you to configure the service that will be created.&amp;nbsp; Give the service a name, select the &lt;strong&gt;WCF Data Services V2 tab&lt;/strong&gt;, and then click Finish.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_24.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_11.sflb" width="298" height="230" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;In about 3 clicks we created an OData service which exposes the domain model, sweet! :)&amp;nbsp; &lt;/p&gt; &lt;h2&gt;Connecting the OData Service to a Kendo Grid&lt;/h2&gt; &lt;p&gt;Now all that is left to do is configure the front end.&amp;nbsp; For now we will wire up the Orders to a KendoUI grid, but feel free to take it even further!&amp;nbsp; KendoUI has a lot of cool features to play around with :)&lt;/p&gt; &lt;p&gt;First thing we need to do is add a new &lt;em&gt;html &lt;/em&gt;page to the project. So once again, right click on the project in the solution explorer, select &lt;strong&gt;Add &lt;/strong&gt;&amp;gt; &lt;strong&gt;New Item&lt;/strong&gt;, only this time choose HTML Page (its in the list I promise, though I have overlooked it for a loong time!), name the page &lt;strong&gt;default.htm&lt;/strong&gt;, and then click &lt;strong&gt;Add.&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_26.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_12.sflb" width="306" height="213" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Now we need to add the needed Kendo files, so add the following lines in the head section:&lt;/p&gt; &lt;script src="https://gist.github.com/1755775.js?file=headincludes.html"&gt;&lt;/script&gt; &lt;p&gt;Next, we need to set up the grid.&amp;nbsp; KendoUI’s web site provides many &lt;a href="http://demos.kendoui.com/web/grid/index.html" target="_blank" re_target="_blank"&gt;great examples&lt;/a&gt; of how to configure binding; so I won’t go into too much detail here.&amp;nbsp; The basic idea is that we need a div that will be used as the container for the KendoUI grid, and then we just have to configure the grid in script.&amp;nbsp; &lt;/p&gt; &lt;p&gt;The code needed is here:&lt;/p&gt; &lt;script src="https://gist.github.com/1755775.js?file=body.html"&gt;&lt;/script&gt; &lt;p&gt;Now run the application, and navigate to default.htm.&amp;nbsp; If all went well you should be presented with a great looking &lt;em&gt;empty&lt;/em&gt; grid:&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_30.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_14.sflb" width="570" height="105" /&gt;&lt;/a&gt; &lt;/p&gt; &lt;p&gt;So what gives?!&amp;nbsp; Why is there no data in the grid?&amp;nbsp; Well if you take a look at firebug/chrome tools you should see something like:&lt;/p&gt; &lt;p&gt;&lt;span style="color: #ff0000;"&gt;Failed to load resource: the server responded with a status of 400 (Bad Request)&lt;/span&gt;&lt;/p&gt; &lt;p&gt;This error by itself is not very helpful, but if you navigate to the page it tried to retrieve, in my case:&lt;/p&gt; &lt;p&gt;&lt;a href="http://localhost:11224/NorthwindService.svc/Orders?$format=json&amp;amp;$inlinecount=allpages&amp;amp;$callback=callback&amp;amp;$top=10" target="blank"&gt;http://localhost:11224/NorthwindService.svc/Orders?$format=json&amp;amp;$inlinecount=allpages&amp;amp;$callback=callback&amp;amp;$top=10&lt;/a&gt;&lt;/p&gt; &lt;p&gt;You will be greeted with this error:&lt;/p&gt; &lt;p&gt;The query parameter '$format' begins with a system-reserved '$' character but is not recognized.&lt;/p&gt; &lt;h2&gt;&lt;/h2&gt; &lt;h2&gt;&lt;/h2&gt; &lt;h2&gt;&lt;/h2&gt; &lt;h2&gt;We Need JSON&lt;/h2&gt; &lt;p&gt;KendoUI uses JSON to communicate with an OData service; but WCF Data Services does not support JSON &lt;em&gt;out of the box.&lt;/em&gt;&amp;nbsp; To enable support for JSON, you can download the needed code from the &lt;a href="http://archive.msdn.microsoft.com/DataServicesJSONP" target="_blank" re_target="_blank"&gt;Microsoft Code Gallery&lt;/a&gt;.&amp;nbsp; &lt;/p&gt; &lt;p&gt;Once you have added the needed code to the project, and you add the needed reference to &lt;strong&gt;System.Runtime.Serialization.dll, &lt;/strong&gt;navigate to NorthwindService.svc.cs (&lt;em&gt;Your name might be different). &lt;/em&gt;&lt;/p&gt; &lt;p&gt;In the service add the &lt;strong&gt;JSONPSupportBehavior&lt;/strong&gt; attribute:&lt;/p&gt; &lt;script src="https://gist.github.com/1755775.js?file=JSONPpartial.cs"&gt;&lt;/script&gt; &lt;p&gt;Run the application one more time, and this time, you should be greeted by a great looking &lt;em&gt;populated&lt;/em&gt; grid :)&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_32.sflb" target="blank"&gt;&lt;img style="display: inline;        border-width: 0px;border-style: solid;" title="image" alt="image" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-image_thumb_15.sflb" width="304" height="192" /&gt;&lt;/a&gt;&amp;nbsp;&lt;/p&gt; &lt;h2&gt;Conclusions&lt;/h2&gt; &lt;p&gt;The OpenAccess ORM Visual Designer, and Service Layer Generator make it extremely easy to get started working with KendoUI.&amp;nbsp; In fact, we only had to write 1 line of server side code thanks to these great tools!&lt;/p&gt; &lt;p&gt;You can see complete code sample in this &lt;a href="https://gist.github.com/1755775" target="_blank" re_target="_blank"&gt;gist&lt;/a&gt;. In addition, this example will be provided in the upcoming release of the &lt;a href="http://www.telerik.com/products/orm/features/sdk.aspx" target="_blank" re_target="_blank"&gt;OpenAccess ORM SDK&lt;/a&gt;, which will be release right along side Q1 2012! Make sure to register for the &lt;a href="http://www.telerik.com/support/webinars.aspx" target="_blank" re_target="_blank"&gt;webinars&lt;/a&gt; so you don’t miss all the great new things we have to show you! &lt;/p&gt; &lt;p&gt;&lt;a title="Telerik Webinars" href="http://www.telerik.com/support/webinars.aspx" target="_blank" re_target="_blank"&gt;&lt;img style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; display: inline; float: right;        border-width: 0px;border-style: solid;" title="Blog_Image-ninja" alt="Blog_Image-ninja" src="http://blogs.telerik.com/Libraries/MetaBlogLib/WindowsLiveWriter-GettingStartedwithKendoUIandOpenAccessOR_C47D-Blog_Image-ninja_3.sflb" width="240" height="130" /&gt;&lt;/a&gt;It’s time for all .NET Ninjas to sharpen their skills! The latest Telerik release is just around the corner and we have tons of new stuff to show off. If you are eager to see the new bits and sharpen your .NET skills, be sure to sign up for Release Webinar Week. This 3-day event is packed with hour-long webinar sessions on the coolest new features shipping with the Q1 2012 release.&amp;nbsp; Release Webinar Week will be held on February 20 – 22, so mark your calendars. One lucky winner from each webinar will leave with a Telerik Ultimate Collection license worth $1999. To enter the drawing and participate in the Q&amp;amp;A session, you must attend the live webinar. &lt;/p&gt; &lt;p&gt;Webinar Schedule and Registration Link:&amp;nbsp; &lt;a href="http://www.telerik.com/support/webinars.aspx" target="blank"&gt;http://www.telerik.com/support/webinars.aspx&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Happy Coding!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/LjrM-I-6ixg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/LjrM-I-6ixg/getting-started-with-kendoui-and-openaccess-orm.aspx</link>
      <author>Joshua Holt</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-07/getting-started-with-kendoui-and-openaccess-orm.aspx</comments>
      <guid isPermaLink="false">670969df-3df9-4274-bb48-4b5366cd382e</guid>
      <pubDate>Thu, 09 Feb 2012 13:30:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-07/getting-started-with-kendoui-and-openaccess-orm.aspx</feedburner:origLink></item>
    <item>
      <title>Q1 Webinar Coming Up!</title>
      <description>&lt;p&gt;Telerik’s Q1 webinars are coming up very soon! You can see webinars on all Telerik products and find out the latest and greatest about them.&lt;/p&gt; &lt;p&gt;I’ll be hosting the Test Studio webinar on 20 Feb from 11AM-12PM, Eastern US time. I’ll be walking through the changes from our November service pack release, and I’ll also show off some of the features Test Studio has to help you create more maintainable functional tests.&lt;/p&gt; &lt;p&gt;You can find registration details at &lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;the Telerik Webinars page&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;I hope to see you there!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/cI2ghXbTLUg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/cI2ghXbTLUg/q1-webinar-coming-up.aspx</link>
      <author>Jim Holmes</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-08/q1-webinar-coming-up.aspx</comments>
      <guid isPermaLink="false">bfb13511-69a3-462b-acd6-9a9c107547d4</guid>
      <pubDate>Thu, 09 Feb 2012 13:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-08/q1-webinar-coming-up.aspx</feedburner:origLink></item>
    <item>
      <title>Using RadDiagnostics for WP7 to receive error reports anonymously</title>
      <description>&lt;p&gt;&lt;a href="http://blogs.telerik.com:80//Libraries/Valentin_Stoychev/RadDiagnosticsService.sflb" target="_blank"&gt;[Please download the attached project with full source code available.]&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Last week&amp;nbsp;we released a Beta preview of Telerik RadControls for WindowsPhone. You can read more info on the&amp;nbsp;6 bright&amp;nbsp;new components for Windows Phone&amp;nbsp;&lt;a href="http://blogs.telerik.com/blogs/posts/12-02-01/radcontrols-for-windows-phone-q1-2012-beta-is-here.aspx"&gt;here&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;RadDiagnostics was one of the released components which received&amp;nbsp;a lot of attention from the Windows Phone developers. This component is sending rich crash reports when an ApplicationUnhandledException is occurred. &lt;a href="http://blogs.telerik.com/valentinstoychev/posts/12-02-01/introducing-raddiagnostics-for-windows-phone.aspx"&gt;Read more about RadDiagnostics in this detailed blog post&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;One of the features RadDiagnostics was created in mind was to allow developers to &lt;strong&gt;receive anonymous crash reports without user interaction&lt;/strong&gt;. By default the control will display a message box notifying the users that an error has occurred and asking them to send the user reports. But sometimes developers do not want to notify users for application exceptions and also users may not be keen to send the data from their email accounts. Using a web service you are sure that all application errors will be reported to you (when users have internet connection).&lt;/p&gt; &lt;p&gt;In this case you can use RadDiagnostics to handle and collect the data on the device and to send this data to your webservice. To do this you need to handle the &lt;em&gt;ExceptionOccured&lt;/em&gt; event of &lt;em&gt;RadDiagnostics&lt;/em&gt; and to &lt;strong&gt;cancel it&lt;/strong&gt;. Then you can get the data and to send it.&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;radDiagnostics = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadDiagnostics();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px !important;"&gt;&lt;code style="color: #000000;"&gt;radDiagnostics.EmailTo = &lt;/code&gt;&lt;code style="color: blue;"&gt;"valio.stoychev@telerik.com"&lt;/code&gt;&lt;code style="color: #000000;"&gt;;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px !important;"&gt;&lt;code style="color: #000000;"&gt;radDiagnostics.Init();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 36px !important;"&gt;&lt;code style="color: #000000;"&gt;radDiagnostics.ExceptionOccurred += &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;EventHandler&amp;lt;ExceptionOccurredEventArgs&amp;gt;(radDiagnostics_ExceptionOccurred);&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;In the &lt;em&gt;ExceptionOccured&lt;/em&gt; event handler you should cancel the MessageBox displaying, to get the already generated data and to send it to &lt;strong&gt;your&lt;/strong&gt; web service:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;void&lt;/code&gt; &lt;code style="color: #000000;"&gt;radDiagnostics_ExceptionOccurred(&lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;object&lt;/code&gt; &lt;code style="color: #000000;"&gt;sender, ExceptionOccurredEventArgs e)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #008200;"&gt;// settings Cancel to true will stop the message box from displaying&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;e.Cancel = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;true&lt;/code&gt;&lt;code style="color: #000000;"&gt;;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #008200;"&gt;// add any cusomt code here, like a custom web service &lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;SendDiagnosticsToWebService((sender &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;as&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadDiagnostics).DiagnosticInfo);&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 24px !important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;private&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;void&lt;/code&gt; &lt;code style="color: #000000;"&gt;SendDiagnosticsToWebService(&lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;string&lt;/code&gt; &lt;code style="color: #000000;"&gt;diagnosticInfo)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;DataCollectorServiceClient serviceClient = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;DataCollectorService.DataCollectorServiceClient();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;serviceClient.CollectDataAsync(radDiagnostics.ApplicationName, radDiagnostics.ApplicationVersion, diagnosticInfo);&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;In the web service implementation you are free to do anything with the received data. You can simply send yourself an email or you can store it in database and build some soft of reports based on the data.&lt;/p&gt; &lt;p&gt;&lt;a href="http://blogs.telerik.com:80//Libraries/Valentin_Stoychev/RadDiagnosticsService.sflb"&gt;In the attached source &lt;/a&gt;I'm showing how to send an email - note that you must have the email&amp;nbsp;functionality configured on the server where you are hosting the web service in order to be able to send emails.&lt;/p&gt; &lt;p&gt;I hope this article helps you build a more robust applications for Windows Phone 7. If you have any other feedback - please do not hesitate to contact me.&lt;/p&gt; &lt;p&gt;You can also find me on twitter &lt;a href="http://twitter.com/valiostoychev"&gt;@valiostoychev&lt;/a&gt;.&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/rQevOx38k6s" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/rQevOx38k6s/using-raddiagnostics-for-wp7-to-receive-error-reports-anonymously.aspx</link>
      <author>Valentin Stoychev</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-06/using-raddiagnostics-for-wp7-to-receive-error-reports-anonymously.aspx</comments>
      <guid isPermaLink="false">b4e5f58d-301d-4504-b41e-16a251cdc3d0</guid>
      <pubDate>Thu, 09 Feb 2012 13:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-06/using-raddiagnostics-for-wp7-to-receive-error-reports-anonymously.aspx</feedburner:origLink></item>
    <item>
      <title>What Makes End-Users and the Marketplace Love Your Windows Phone App?</title>
      <description>&lt;p&gt;An unusual thing happened at the Telerik Windows Phone team product planning meeting for Q1 2012 a few months ago. Instead of starting with our usual mantra “What does our customer need in order to build a great app?” we talked about love. What does love have to do with a mobile app you would ask? Well, a lot. Keep reading. The two questions we asked were:&lt;/p&gt; &lt;p&gt;1)&amp;nbsp;&amp;nbsp; &amp;nbsp;What is it that will make the end-users love our customer’s Windows Phone app?&lt;br /&gt;
2)&amp;nbsp;&amp;nbsp; &amp;nbsp;What is it that will make our customer’s app be loved by the Windows Phone marketplace?&amp;nbsp;&lt;/p&gt; &lt;p&gt;And here’s a preview of what comes next in the blog post:&lt;/p&gt; &lt;p&gt;&lt;img alt="" src="http://blogs.telerik.com:80//Libraries/Marketing_team/Building_Blocks_blog_600pix.sflb?;decreaseOnly=true" /&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;We know that the end-user is smart, demanding and sophisticated. He wants super intuitive functionality, but also a simple one, he wants an app that’s slick and cool, he also wants an app that match his needs very closely, he wants to be surprised and he’s impatient – performance issues are simply unacceptable. Your app has a few minutes to make an impression, or it ends up being a one-time fling.&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.telerik.com/products/windows-phone.aspx" target="_blank"&gt;RadControls for Windows Phone&lt;/a&gt; already had the performance factor covered. We’re proud to have the fastest ListBox control, which is pretty much the backbone of every mobile app. We have lightning fast Chart and a JumpList controls that won’t fail you even when bound to 10,000 records. &lt;/p&gt; &lt;p&gt;That is why we focused on functionalities that help you achieve “that thing” that make your users simply love your app. Some call it “the wow factor”, Microsoft has called it “element of delight”, we are building it so that you can use it out-of-the-box.&lt;/p&gt; &lt;p&gt;RadSlideView adds this cool flip transition, both with vertical and horizontal orientation.&lt;/p&gt; &lt;p&gt; &lt;object width="560" height="315"&gt; &lt;param name="movie" value="http://www.youtube.com/v/V2lhC04yCXU?version=3&amp;amp;hl=en_US&amp;amp;rel=0"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/V2lhC04yCXU?version=3&amp;amp;hl=en_US&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="315" width="560"&gt;&lt;/object&gt; &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;And guess what? You can achieve this with a single property.&lt;/p&gt; &lt;p&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;o:OfficeDocumentSettings&gt;
  &lt;o:AllowPNG/&gt;
 &lt;/o:OfficeDocumentSettings&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:WordDocument&gt;
  &lt;w:View&gt;Normal&lt;/w:View&gt;
  &lt;w:Zoom&gt;0&lt;/w:Zoom&gt;
  &lt;w:TrackMoves/&gt;
  &lt;w:TrackFormatting/&gt;
  &lt;w:PunctuationKerning/&gt;
  &lt;w:ValidateAgainstSchemas/&gt;
  &lt;w:SaveIfXMLInvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;
  &lt;w:IgnoreMixedContent&gt;false&lt;/w:IgnoreMixedContent&gt;
  &lt;w:AlwaysShowPlaceholderText&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;
  &lt;w:DoNotPromoteQF/&gt;
  &lt;w:LidThemeOther&gt;EN-US&lt;/w:LidThemeOther&gt;
  &lt;w:LidThemeAsian&gt;X-NONE&lt;/w:LidThemeAsian&gt;
  &lt;w:LidThemeComplexScript&gt;X-NONE&lt;/w:LidThemeComplexScript&gt;
  &lt;w:Compatibility&gt;
   &lt;w:BreakWrappedTables/&gt;
   &lt;w:SnapToGridInCell/&gt;
   &lt;w:WrapTextWithPunct/&gt;
   &lt;w:UseAsianBreakRules/&gt;
   &lt;w:DontGrowAutofit/&gt;
   &lt;w:SplitPgBreakAndParaMark/&gt;
   &lt;w:EnableOpenTypeKerning/&gt;
   &lt;w:DontFlipMirrorIndents/&gt;
   &lt;w:OverrideTableStyleHps/&gt;
  &lt;/w:Compatibility&gt;
  &lt;m:mathPr&gt;
   &lt;m:mathFont m:val="Cambria Math"/&gt;
   &lt;m:brkBin m:val="before"/&gt;
   &lt;m:brkBinSub m:val="&amp;#45;-"/&gt;
   &lt;m:smallFrac m:val="off"/&gt;
   &lt;m:dispDef/&gt;
   &lt;m:lMargin m:val="0"/&gt;
   &lt;m:rMargin m:val="0"/&gt;
   &lt;m:defJc m:val="centerGroup"/&gt;
   &lt;m:wrapIndent m:val="1440"/&gt;
   &lt;m:intLim m:val="subSup"/&gt;
   &lt;m:naryLim m:val="undOvr"/&gt;
  &lt;/m:mathPr&gt;&lt;/w:WordDocument&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;
 &lt;w:LatentStyles DefLockedState="false" DefUnhideWhenUsed="true"
  DefSemiHidden="true" DefQFormat="false" DefPriority="99"
  LatentStyleCount="267"&gt;
  &lt;w:LsdException Locked="false" Priority="0" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Normal"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="heading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="9" QFormat="true" Name="heading 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 7"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 8"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" Name="toc 9"/&gt;
  &lt;w:LsdException Locked="false" Priority="35" QFormat="true" Name="caption"/&gt;
  &lt;w:LsdException Locked="false" Priority="10" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" Name="Default Paragraph Font"/&gt;
  &lt;w:LsdException Locked="false" Priority="11" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Subtitle"/&gt;
  &lt;w:LsdException Locked="false" Priority="22" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Strong"/&gt;
  &lt;w:LsdException Locked="false" Priority="20" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="59" SemiHidden="false"
   UnhideWhenUsed="false" Name="Table Grid"/&gt;
  &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Placeholder Text"/&gt;
  &lt;w:LsdException Locked="false" Priority="1" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="No Spacing"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" UnhideWhenUsed="false" Name="Revision"/&gt;
  &lt;w:LsdException Locked="false" Priority="34" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="List Paragraph"/&gt;
  &lt;w:LsdException Locked="false" Priority="29" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="30" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Intense Quote"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 1"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 2"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 3"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 4"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 5"/&gt;
  &lt;w:LsdException Locked="false" Priority="60" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="61" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="62" SemiHidden="false"
   UnhideWhenUsed="false" Name="Light Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="63" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="64" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Shading 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="65" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="66" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium List 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="67" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 1 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="68" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 2 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="69" SemiHidden="false"
   UnhideWhenUsed="false" Name="Medium Grid 3 Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="70" SemiHidden="false"
   UnhideWhenUsed="false" Name="Dark List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="71" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Shading Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="72" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful List Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="73" SemiHidden="false"
   UnhideWhenUsed="false" Name="Colorful Grid Accent 6"/&gt;
  &lt;w:LsdException Locked="false" Priority="19" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Subtle Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="21" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Intense Emphasis"/&gt;
  &lt;w:LsdException Locked="false" Priority="31" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Subtle Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="32" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Intense Reference"/&gt;
  &lt;w:LsdException Locked="false" Priority="33" SemiHidden="false"
   UnhideWhenUsed="false" QFormat="true" Name="Book Title"/&gt;
  &lt;w:LsdException Locked="false" Priority="37" Name="Bibliography"/&gt;
  &lt;w:LsdException Locked="false" Priority="39" QFormat="true" Name="TOC Heading"/&gt;
 &lt;/w:LatentStyles&gt;
&lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 10]&gt;
&lt;style&gt;
 /* Style Definitions */
 table.MsoNormalTable
	{mso-style-name:"Table Normal";
	mso-tstyle-rowband-size:0;
	mso-tstyle-colband-size:0;
	mso-style-noshow:yes;
	mso-style-priority:99;
	mso-style-parent:"";
	mso-padding-alt:0in 5.4pt 0in 5.4pt;
	mso-para-margin-top:0in;
	mso-para-margin-right:0in;
	mso-para-margin-bottom:10.0pt;
	mso-para-margin-left:0in;
	line-height:115%;
	mso-pagination:widow-orphan;
	font-size:11.0pt;
	font-family:"Calibri","sans-serif";
	mso-ascii-font-family:Calibri;
	mso-ascii-theme-font:minor-latin;
	mso-hansi-font-family:Calibri;
	mso-hansi-theme-font:minor-latin;
	mso-bidi-font-family:"Times New Roman";
	mso-bidi-theme-font:minor-bidi;}
&lt;/style&gt;
&lt;![endif]--&gt; &lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;segoe wp&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt;On demand loading is another sweet new feature of the SlideView control. The app will load only the currently selected item, boosting the loading time of the app. You can also use a template to provide a light-weight snapshot of the two adjacent to the viewport items. But what does this mean to the user? It’s simple – he will have what he wants fast and he won’t get bored while waiting. Check the example:&lt;/span&gt;&lt;/p&gt; &lt;p class="MsoNormal"&gt;&lt;span style="font-family: &amp;quot;segoe wp&amp;quot;,&amp;quot;sans-serif&amp;quot;;"&gt; &lt;/span&gt;&lt;/p&gt; &lt;p&gt;
&amp;nbsp;&lt;/p&gt; &lt;p&gt; &lt;object width="420" height="315"&gt; &lt;param name="movie" value="http://www.youtube.com/v/KFhnTY2JWes?version=3&amp;amp;hl=en_US&amp;amp;rel=0"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/KFhnTY2JWes?version=3&amp;amp;hl=en_US&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="315" width="420"&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;How about horizontal scrolling in the ListBox control. You will not find this behavior in the Windows Phone toolbox.&lt;/p&gt; &lt;p&gt; &lt;object width="560" height="315"&gt; &lt;param name="movie" value="http://www.youtube.com/v/7lgzA2nSzFo?version=3&amp;amp;hl=en_US&amp;amp;rel=0"&gt; &lt;param name="allowFullScreen" value="true"&gt; &lt;param name="allowscriptaccess" value="always"&gt;&lt;embed src="http://www.youtube.com/v/7lgzA2nSzFo?version=3&amp;amp;hl=en_US&amp;amp;rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" height="315" width="560"&gt;&lt;/object&gt;&lt;/p&gt; &lt;p&gt;Moving on to the next question, how to help our customers’ apps achieve better rankings on the marketplace. The starting point for this discussion was the analysis of the data and feedback collected from Tasks - a real-world app created by our team as a learning exercise. We noticed for examples that after implementing “Rate this app” reminder, the number of the app's ratings increased drastically, which consecutively affected positively the overall ranking of the app.&lt;/p&gt; &lt;p&gt;The marketplace is the primary distribution channel for your app and it has its logic and app’s success metrics. There are certain functionalities which are the absolute must-have composite parts of a mobile application that has potential to be successful on the marketplace.&lt;/p&gt; &lt;p&gt;The good news is that we started building these must-have capabilities to that you can concentrate on the logic and the “wow factor” of your app. We called them building blocks and we are introducing four of them with this release:&lt;/p&gt; &lt;p&gt;RadDiagnostics – enabling end-users to send instant crash reports to the developer. &lt;a href="http://blogs.telerik.com/blogs/posts/12-02-01/introducing-raddiagnostics-for-windows-phone.aspx"&gt;Read how to implement it and see a preview of how the report will look like in this blog post. &lt;/a&gt;&lt;/p&gt; &lt;p&gt;RateAppReminder – helping your app gets more ratings, which is one of the factors affecting greatly the app’s overall ranking. &lt;a href="http://blogs.telerik.com/windowsphoneteam/posts/12-02-01/introducing-rate-application-reminder-for-windows-phone.aspx"&gt;See how simple it is to implement the control. &lt;/a&gt;&lt;/p&gt; &lt;p&gt;TrialReminder – encouraging purchase of the paid version of the app or of premium content. &lt;a href="http://blogs.telerik.com/windowsphoneteam/posts/12-02-01/implementing-trial-functionality-for-windows-phone-applications.aspx"&gt;Read how to implement the TrialReminder control here.&lt;/a&gt;&lt;/p&gt; &lt;p&gt;LiveTileHelper – allowing you to easily create context specific dynamic tiles. &lt;a href="http://blogs.telerik.com/valentinstoychev/posts/11-12-21/create-beautiful-and-dynamic-live-tiles-with-telerik-livetilehelper.aspx"&gt;Read how&lt;/a&gt;&lt;/p&gt; &lt;p&gt;Quite a few other components and functionalities will be available with the new release of RadControls for Windows Phone in mid-February. Stay tuned.&lt;/p&gt; &lt;p&gt;Join us for the Release Webinar Week to learn for the cool, new stuff across all Telerik product lines. This 3-day event is packed with hour-long webinar sessions from February 20 till February 22, so mark your calendars. One lucky winner from each webinar will leave with a Telerik Ultimate Collection license worth $1999. To enter the drawing and participate in the Q&amp;amp;A session, you must attend the live webinar.&amp;nbsp; &lt;/p&gt; &lt;p&gt;&lt;a href="http://www.telerik.com/support/webinars.aspx"&gt;Register here!&lt;/a&gt;&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/ApLS-31dmN4" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/ApLS-31dmN4/what-makes-end-users-and-the-marketplace-love-your-windows-phone-app.aspx</link>
      <author>Marketing Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-07/what-makes-end-users-and-the-marketplace-love-your-windows-phone-app.aspx</comments>
      <guid isPermaLink="false">04eb5747-13eb-4dde-8895-8c1774d04ae5</guid>
      <pubDate>Wed, 08 Feb 2012 13:32:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-07/what-makes-end-users-and-the-marketplace-love-your-windows-phone-app.aspx</feedburner:origLink></item>
    <item>
      <title>Implementing Trial Functionality for Windows Phone applications</title>
      <description>&lt;p&gt;As part of the &lt;a href="http://blogs.telerik.com/deyanginev/posts/12-02-01/radcontrols-for-windows-phone-q1-2012-beta-is-here.aspx"&gt;Telerik “Q1.2012 Beta” package for Windows Phone&lt;/a&gt; we are releasing a new set of "&lt;em&gt;Application Building Blocks&lt;/em&gt;" components. You can find more info on the idea of Application Building Blocks here.&amp;nbsp;&lt;/p&gt; &lt;h2&gt;Overview&lt;/h2&gt; &lt;p&gt;Part of the application building blocks are the &lt;em&gt;RadTrialApplicationReminder&lt;/em&gt; and &lt;em&gt;RadTrialFeatureReminder&lt;/em&gt; components. With these 2 components developers can implement and adjust the trial functionality of their applications. You can implement application-wide trial notifications, or feature-specific trial notifications, with a lot of configurable options. Both components support time-based and usage-based trial restrictions. Here is the list of the implemented features:&lt;/p&gt; &lt;ul&gt; &lt;li&gt;Optional free period (time based or usage based), when no trial reminders will be displayed,&lt;/li&gt; &lt;li&gt;Reminders recurrence – after the free usage is expired trial reminders can be configured to be displayed on a given period/usage,&lt;/li&gt; &lt;li&gt;Trial ended notification message,&lt;/li&gt; &lt;li&gt;Option for end-users to skip trial reminder recurrence (trial-ended message is always displayed!),&lt;/li&gt; &lt;li&gt;Configurable message box content&lt;/li&gt; &lt;/ul&gt; &lt;p&gt;The timeline below summarizes the logic of reminder messages display:&lt;br /&gt; &lt;img alt="Implementing Trial Functionality for WindowsPhone/WinRt" src="http://blogs.telerik.com:80//Libraries/Valentin_Stoychev/RemindersTimeline.sflb" /&gt;&lt;br /&gt;
Here is how a sample trial ended notification looks like:&lt;br /&gt; &lt;img alt="Implementing Trial functionality for WindowsPhone/WinRt apps" src="http://blogs.telerik.com:80//Libraries/Valentin_Stoychev/trial_1.sflb" /&gt;&lt;/p&gt; &lt;h2&gt;Implementing Application wide trial functionality&lt;/h2&gt; &lt;p&gt;Using the trial reminder is quite simple and is only a matter of configuration plus one line of code for notification.&lt;br /&gt;
1.&amp;nbsp;Define and configure the application trial reminder in your &lt;em&gt;App&lt;/em&gt; class:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;private&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;static&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadTrialApplicationReminder trialReminder;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 6px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;public&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;static&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadTrialApplicationReminder TrialReminder&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 6px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;get&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;if&lt;/code&gt; &lt;code style="color: #000000;"&gt;(trialReminder != &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;null&lt;/code&gt;&lt;code style="color: #000000;"&gt;)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 15px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;return&lt;/code&gt; &lt;code style="color: #000000;"&gt;trialReminder;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;return&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadTrialApplicationReminder()&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 15px !important;"&gt;&lt;code style="color: #000000;"&gt;AllowedTrialUsageCount = 5, &lt;/code&gt;&lt;code style="color: #008200;"&gt;// maximum number of app runs until trial is expired&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 15px !important;"&gt;&lt;code style="color: #000000;"&gt;FreeUsageCount = 2, &lt;/code&gt;&lt;code style="color: #008200;"&gt;// number of app runs when no reminder will be displayed&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 15px !important;"&gt;&lt;code style="color: #000000;"&gt;OccurrenceUsageCount = 1 &lt;/code&gt;&lt;code style="color: #008200;"&gt;// reminder will be displayed on every run after the free usage is over&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;};&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 6px !important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;2.&amp;nbsp;Notify end users for trial when needed:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;App.TrialReminder.Notify();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;This code is best to be placed in the first page of your application.&lt;/p&gt; &lt;p&gt;3.&amp;nbsp;Disabling application functionality when trial is expired:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;PaidButton.IsEnabled = !App.TrialReminder.IsTrialExpired;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;You can use the &lt;em&gt;IsTrialExpired&lt;/em&gt; property to disable specific functionality in your applications.&lt;/p&gt; &lt;h2&gt;Implementing trial reminder for specific paid&amp;nbsp;feature&lt;/h2&gt; &lt;p&gt;There are many real world scenarios when you will want to have trial for a specific paid feature(s) and to leave the usage for the rest of application completely free. In this case you can use the &lt;em&gt;RadTrialFeatureReminder&lt;/em&gt;. This component has the same logic for displaying the reminder messages as the ApplicationReminder, with two additional properties – &lt;em&gt;UsageCount&lt;/em&gt; and &lt;em&gt;FeatureId&lt;/em&gt;. &lt;br /&gt;
Here is how to use the trial feature reminder:&lt;br /&gt;
1.&amp;nbsp;Define and configure the reminder:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;paidFeatureReminder = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadTrialFeatureReminder()&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;FreeUsageCount = 1,&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;OccurrenceUsageCount = 2,&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;AllowedTrialUsageCount = 7,&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #000000;"&gt;FeatureId = 1&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;};&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;2.&amp;nbsp;When feature will be executed:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;private&lt;/code&gt; &lt;code style="color: #006699; font-weight: bold;"&gt;void&lt;/code&gt; &lt;code style="color: #000000;"&gt;Button_Click(&lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;object&lt;/code&gt; &lt;code style="color: #000000;"&gt;sender, RoutedEventArgs e)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 6px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;paidFeatureReminder.UsageCount++;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;paidFeatureReminder.Notify();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;if&lt;/code&gt; &lt;code style="color: #000000;"&gt;(paidFeatureReminder.IsTrialExpired)&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;{&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;return&lt;/code&gt;&lt;code style="color: #000000;"&gt;;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #000000;"&gt;}&amp;nbsp;&amp;nbsp; &lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&lt;code style="color: #008200;"&gt;// perform the feature actions&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 9px !important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 6px !important;"&gt;&lt;code style="color: #000000;"&gt;}&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;As you can see with these two components you can implement very easy and in a flexible manner the trial experience of your application.&lt;br /&gt;
I hope that this component will be very useful for you - please give it a try during the beta period and &lt;a href="http://www.telerik.com/community/forums/windows-phone/general-discussions.aspx"&gt;let us know if you have suggestions for enhancements&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;You can also find me on twitter &lt;a href="http://twitter.com/valiostoychev"&gt;@valiostoychev&lt;/a&gt; – I’ll be happy to discuss any feedback you have!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/AJcn0BWZedM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/AJcn0BWZedM/implementing-trial-functionality-for-windows-phone-applications.aspx</link>
      <author>Valentin Stoychev</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-01/implementing-trial-functionality-for-windows-phone-applications.aspx</comments>
      <guid isPermaLink="false">91948f78-0888-4094-9838-47812c76e889</guid>
      <pubDate>Wed, 08 Feb 2012 13:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-01/implementing-trial-functionality-for-windows-phone-applications.aspx</feedburner:origLink></item>
    <item>
      <title>A better way to view images in RadFileExplorer for ASP.NET AJAX – thumbnail view comes in Q1 2012</title>
      <description>&lt;p&gt;Starting with the Q1 2012 release, the RadFileExplorer gets a new display mode - thumbnails. In this mode the grid with folder and file details is replaced with a listview, which shows the current folder in a display similar to the Windows File Explorer's medium icons view. The best scenario for this new display mode is when you want to display thumbnails of image files - these will be shown instead of the default image file icon we have in the control. Other supported files (e.g. office documents) will show up with normal icons. &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;img alt="thumbnails explorer mode" src="http://blogs.telerik.com:80//Libraries/ASP_NET_AJAX/thumbnails_fileexplorer.sflb" /&gt;&lt;/p&gt; &lt;p&gt;The size of the thumbnail icons can be easily changed, so if your project needs larger ones there is nothing to worry about! &lt;/p&gt; &lt;p&gt;The new file explorer view is enabled by default for the RadEditor's ImageManager dialog. If you want to keep the old grid view in the image manager, you can set the editor property&lt;strong&gt; ImageManager-ViewMode="Grid"&lt;/strong&gt;. The default value of this property, starting with Q1 2012, is&lt;strong&gt; "Thumbnails"&lt;/strong&gt;.&lt;/p&gt; &lt;p&gt;You can see a live demo of the new display mode on our examples website at&lt;a href="http://demos.telerik.com/aspnet-ajax-beta/fileexplorer/examples/applicationscenarios/listviewintegration/defaultcs.aspx"&gt; http://demos.telerik.com/aspnet-ajax-beta/fileexplorer/examples/applicationscenarios/listviewintegration/defaultcs.aspx&lt;/a&gt;. To see the updated image manager in RadEditor, you can go to any editor demo - for example &lt;span style="font-size: 11pt; line-height: 115%; font-family: calibri,sans-serif;"&gt;&lt;a href="http://demos.telerik.com/aspnet-ajax-beta/editor/examples/xhtmlvalidatortrackchangesformatcodeblockdialogs/defaultcs.aspx"&gt;http://demos.telerik.com/aspnet-ajax-beta/editor/examples/xhtmlvalidatortrackchangesformatcodeblockdialogs/defaultcs.aspx&lt;/a&gt;&lt;/span&gt;. The keyboard shortcut for opening the Image Manager dialog in the editor is Ctrl-M (of course, you can also click the dialog icon in the editor toolbar).&lt;/p&gt; &lt;p&gt; &lt;a re_target="blank" target="blank" title="Telerik' AJAX Q1 2012 Beta is here" href="http://www.telerik.com/account/your-products/trial-product-versions/download-trial-file.aspx?fileid=12151&amp;amp;pid=0&amp;amp;dispkey=True"&gt; &lt;img alt="Telerik ASP.NET AJAX Q1 2012 Beta is here" src="http://blogs.telerik.com/Libraries/ASP_NET_AJAX/Blogs_banners-AJAX.sflb" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;div id="author" class="vcard"&gt; &lt;h2&gt;About the author&lt;/h2&gt; &lt;img class="photo" alt="Stoyan Stratev" src="http://blogs.telerik.com/Libraries/ASP_NET_AJAX/StoyanStratev.sflb" /&gt; &lt;h3 class="fn"&gt;Stoyan Stratev&lt;/h3&gt; &lt;p&gt;Stoyan Stratev is the team lead of one of Telerik’s ASP.NET AJAX teams. He joined the company in 2005 as a web developer and ever since he has been specializing in the integration of the Telerik components in third-party solutions, such as DotNetNuke and SharePoint. His main interests are the client side of web development and his team is responsible for the oldest Telerik’s product – the RadEditor. &lt;/p&gt; &lt;p class="twit"&gt;----&lt;/p&gt; &lt;/div&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/7-tRrUZbxBs" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/7-tRrUZbxBs/a-better-way-to-view-images-in-radfileexplorer-for-asp-net-ajax-thumbnail-view-comes-in-q1-2012.aspx</link>
      <author>ASP.NET AJAX Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-08/a-better-way-to-view-images-in-radfileexplorer-for-asp-net-ajax-thumbnail-view-comes-in-q1-2012.aspx</comments>
      <guid isPermaLink="false">811a0f4b-bd90-40c4-adaf-0624e1425562</guid>
      <pubDate>Wed, 08 Feb 2012 12:15:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-08/a-better-way-to-view-images-in-radfileexplorer-for-asp-net-ajax-thumbnail-view-comes-in-q1-2012.aspx</feedburner:origLink></item>
    <item>
      <title>How to Write a WinRT XAML Metro App on DevProConnections</title>
      <description>&lt;p&gt;Happy Monday, XAML lovers!  For anyone who has been following along in the &lt;a href="http://www.theverge.com/microsoft/2012/2/5/2768471/windows-8-start-button-removed-consumer-preview" alt="Windows 8 Rumors!"&gt;rumors space&lt;/a&gt;, things with Windows 8 are heating up and it looks like we may soon be seeing the "consumer preview", previously known as the Beta to us tech geeks.  I for one welcome the proposed new Start button experience as well as anything else they manage to get into this next release (full disclosure, I was at Build and use that tablet almost as much as my work laptop... my iPad has become a glorified Kindle), especially if it has more developer goodness included.&lt;/p&gt; &lt;p&gt;Getting to my point, however, is that since we're getting ready for another release of the Win8/WinRT platform you had better be sure you are staying up to speed with the new WinRT development side of things... and conveniently we have another resource available to help jump-start your XAML development efforts!  Last week our friends at DevProConnections published a new article by yours truly titled &lt;a href="http://www.devproconnections.com/article/windows8/winrt-xaml-metro-142017" alt="How to Write a WinRT XAML Metro App by Evan Hutnick"&gt;'How to Write a WinRT XAML Metro App'&lt;/a&gt; which covers the getting started experience, different view modes, some of the default templates, and most importantly how you can leverage the skills you already have for Silverlight and WPF for developing WinRT XAML applications.  Check it out and walk through writing your first WinRT XAML app!&lt;/p&gt; &lt;p&gt;And in case you were looking for more information on what Telerik is doing for Windows 8, &lt;a href="http://www.telerik.com/products/win8.aspx" alt="Telerik Already Loves Windows 8"&gt;we've created a page&lt;/a&gt; to highlight our support for the platform, to clear up some of the FUD around the Win8 rumor-mill, and to give you a look at how your current .Net development skills can still be leveraged and can even jump-start your development in Windows 8.  We have also been doing our own research, &lt;a href="http://blogs.telerik.com/georgiatanasov/posts/11-10-13/radchart-for-windows-8-winrt-taking-its-first-breath.aspx" alt="RadChartView on WinRT"&gt;as you can see in this post by Georgi on our Windows Phone team&lt;/a&gt;, and have some code running on one of those Build tablets as a proof of concept on this new platform.  Don’t worry, we’ll be there when you start to seriously develop for Windows 8, it’s the Telerik way.&lt;/p&gt; &lt;p&gt;Stay tuned for more - we all know the Beta/Consumer Preview is coming soon for Windows 8, but while you wait for that go ahead and download the&amp;nbsp;&lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=571"&gt;RadControls for Silverlight&lt;/a&gt; and/or&amp;nbsp;&lt;a href="http://www.telerik.com/download-trial-file.aspx?pid=601"&gt;WPF&lt;/a&gt; to help sharpen your XAML skills!&lt;/p&gt; &lt;p&gt;&lt;a href="http://www.twitter.com/evanhutnick" alt="Evan Hutnick on Twitter!"&gt;@EvanHutnick&lt;/a&gt;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/8kNAqKXhlvg" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/8kNAqKXhlvg/how-to-write-a-winrt-xaml-metro-app-on-devproconnections.aspx</link>
      <author>Evan Hutnick</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-06/how-to-write-a-winrt-xaml-metro-app-on-devproconnections.aspx</comments>
      <guid isPermaLink="false">4b80a334-a82f-4a6a-8487-69e4e393830e</guid>
      <pubDate>Tue, 07 Feb 2012 13:45:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-06/how-to-write-a-winrt-xaml-metro-app-on-devproconnections.aspx</feedburner:origLink></item>
    <item>
      <title>Telerik OpenAccess ORM – MVC Video Tutorials</title>
      <description>&lt;p&gt;We believe that the fastest way to learn how to use an OpenAccess model in your ASP.NET MVC 3 application is to watch a video tutorial. Therefore we have prepared some videos, guiding your OpenAccess ORM integration in an MVC project step by step.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Of course, there are different approaches to that based on your needs and personal preferences – you might want to use the strong capabilities of our Visual Designer&amp;nbsp;&lt;a href="http://tv.telerik.com/series/building-mvc-3-application-database-first-with-openaccess-orm"&gt;Database-First scenario&lt;/a&gt; to create your Domain Model or you can map everything &lt;a href="http://tv.telerik.com/series/building-mvc-3-application-with-openaccess-orm-fluent-mapping-api"&gt;using our Fluent Mapping API&lt;/a&gt;. In any case, each of the dedicated video series will guide you through the process of creating your OpenAccess Model, Controllers and Views and in the end bringing them together to execute a simple application presenting and manipulating data. &lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Video tutorials are great, but you prefer the good old step-by-step documentation articles for reference? Do not hesitate to turn to our&amp;nbsp;&lt;a href="http://www.telerik.com/help/openaccess-orm/quickstart-mvc-overview.html"&gt;MVC3 quick-start tutorial&lt;/a&gt; as a source of further information. And for those of you who want to see OpenAccess and&amp;nbsp;Telerik ASP.NET MVC Extensions in action we have also provided some full-blown MVC 3 sample applications in our latest internal build of the &lt;a href="http://www.telerik.com/account/your-products/trial-product-versions/trial-single-download.aspx?pmvid=2645&amp;amp;pid=638"&gt;OpenAccess SDK&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt; &lt;p&gt;Stay tuned, as we will continue posting tutorials and learning resources that will make implementing your project with OpenAccess ORM easier and faster. Search for OpenAccess in Telerik TV and &lt;a href="http://tv.telerik.com/search?libraries=openaccess+orm"&gt;check them out&lt;/a&gt;!&lt;/p&gt; &lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/fl5TlnThOPM" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/fl5TlnThOPM/telerik-openaccess-orm-mvc-video-tutorials.aspx</link>
      <author>OpenAccess ORM Team</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-06/telerik-openaccess-orm-mvc-video-tutorials.aspx</comments>
      <guid isPermaLink="false">776c0a3f-6ec5-477e-9052-cd274630488c</guid>
      <pubDate>Tue, 07 Feb 2012 13:30:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-06/telerik-openaccess-orm-mvc-video-tutorials.aspx</feedburner:origLink></item>
    <item>
      <title>Introducing Rate Application Reminder for Windows Phone</title>
      <description>&lt;p&gt;As part of the&amp;nbsp;&lt;a href="http://blogs.telerik.com/deyanginev/posts/12-02-01/radcontrols-for-windows-phone-q1-2012-beta-is-here.aspx"&gt;Telerik “Q1.2012 Beta” WindowsPhone&lt;/a&gt;&amp;nbsp;package we released a set of building blocks components. You can find more info on the idea of building blocks for Windows Phone here. &lt;/p&gt; &lt;h2&gt;Overview&lt;/h2&gt; &lt;p&gt;As we are discussing in our “&lt;a href="http://blogs.telerik.com/telerikmarketing/posts/11-12-02/how-to-promote-your-windows-phone-app-on-a-shoestring.aspx"&gt;Promote your Windows Phone App on a Shoestring&lt;/a&gt;” whitepaper, the number of ratings plays a big role in the algorithm that the marketplace uses to rank the different apps. Our experience shows that if the users are reminded to do something, chances are that their response rate will be higher than if they are not reminded. &lt;/p&gt; &lt;p&gt;With &lt;em&gt;RadRateApplicationReminder&lt;/em&gt; you can configure your application to display a message box that reminds users to rate your application on every given period or for a given application usage. Here is how a sample Rate reminder looks like:&lt;/p&gt; &lt;p&gt;&lt;img alt="Implement Rate Application Reminder for Windows Phone" src="http://blogs.telerik.com:80//Libraries/Valentin_Stoychev/rate_1.sflb" /&gt;&lt;/p&gt; &lt;h2&gt;Configuration options&lt;/h2&gt; &lt;p&gt;The usage of this component is quite simple. Let’s say that you want your users to be reminded to rate your application on every 50 application runs. To do this you need the following code:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;RadRateApplicationReminder rateReminder = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadRateApplicationReminder();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.RecurrencePerUsageCount = 50;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.Notify();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;If you want the reminder message to be displayed on a given time period – say each 20 days you should use the following code:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;RadRateApplicationReminder rateReminder = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadRateApplicationReminder();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.RecurrencePerTimePeriod = TimeSpan.FromDays(20);&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.Notify();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;This is how easy is to use this component! Ofcourse you can change the content of the message box and to have your own custom message displayed as a reminder. To do this, use the following code:&lt;/p&gt; &lt;div class="reCodeBlock" style="border: 1px solid #7f9db9; overflow-y: auto;"&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;RadRateApplicationReminder rateReminder = &lt;/code&gt;&lt;code style="color: #006699; font-weight: bold;"&gt;new&lt;/code&gt; &lt;code style="color: #000000;"&gt;RadRateApplicationReminder();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.RecurrencePerTimePeriod = TimeSpan.FromDays(20);&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.MessageBoxInfo.Content = Strings.PleaseRateApplicationMessage;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.MessageBoxInfo.Title = Strings.PleaseRateApplicationMessageTitle;&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #ffffff;"&gt;&lt;span&gt;&lt;code&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/code&gt;&lt;span style="margin-left: 12px !important;"&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;div style="background-color: #f8f8f8;"&gt;&lt;span&gt;&lt;span style="margin-left: 0px !important;"&gt;&lt;code style="color: #000000;"&gt;rateReminder.Notify();&lt;/code&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt; &lt;/div&gt; &lt;p&gt;You also have an option to allow users to skip further reminders from displaying. For this purpose you should use the &lt;em&gt;AllowUsersToSkipFurtherReminders&lt;/em&gt; property.&lt;/p&gt; &lt;p&gt;I hope that this component will be very useful for you - please give it a try during the beta period and &lt;a href="http://www.telerik.com/community/forums/windows-phone/general-discussions.aspx"&gt;let us know if you have suggestions for enhancements&lt;/a&gt;. &lt;/p&gt; &lt;p&gt;You can also find me on twitter &lt;a href="http://twitter.com/valiostoychev"&gt;@valiostoychev&lt;/a&gt; – I’ll be happy to discuss any feedback you have!&lt;/p&gt;&lt;img src="http://feeds.feedburner.com/~r/Telerik/~4/MnG1g88yzO8" height="1" width="1"/&gt;</description>
      <link>http://feedproxy.google.com/~r/Telerik/~3/MnG1g88yzO8/introducing-rate-application-reminder-for-windows-phone.aspx</link>
      <author>Valentin Stoychev</author>
      <comments>http://blogs.telerik.com/blogs/posts/12-02-01/introducing-rate-application-reminder-for-windows-phone.aspx</comments>
      <guid isPermaLink="false">a363d396-25c9-44b0-957e-8a5f80237ab6</guid>
      <pubDate>Tue, 07 Feb 2012 13:00:00 GMT</pubDate>
    <feedburner:origLink>http://blogs.telerik.com/blogs/posts/12-02-01/introducing-rate-application-reminder-for-windows-phone.aspx</feedburner:origLink></item>
  </channel>
</rss>

