<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Intersoft Solutions Corporate Blog &#187; WebGrid</title>
	<atom:link href="http://blog.intersoftsolutions.com/tag/webgrid/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.intersoftsolutions.com</link>
	<description>All about development productivity – ASP.NET, Silverlight, WPF, iOS, Android, Windows Phone, Windows 8</description>
	<lastBuildDate>Sat, 21 Apr 2018 06:57:13 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.2.33</generator>
	<item>
		<title>Migrating to WebUI Unified Theming</title>
		<link>http://blog.intersoftsolutions.com/2016/03/migrating-to-webui-unified-theming/</link>
		<comments>http://blog.intersoftsolutions.com/2016/03/migrating-to-webui-unified-theming/#comments</comments>
		<pubDate>Tue, 15 Mar 2016 08:42:49 +0000</pubDate>
		<dc:creator><![CDATA[Nicholas Lie]]></dc:creator>
				<category><![CDATA[2016 R1]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Getting Started Guide]]></category>
		<category><![CDATA[WebUI]]></category>
		<category><![CDATA[Unified Theming]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebUI Studio]]></category>

		<guid isPermaLink="false">http://blog.intersoftsolutions.com/?p=6477</guid>
		<description><![CDATA[We&#8217;ve recently released&#160;our new Unified Theming for WebUI, which will dramatically alter the look and feel of your WebUI-powered apps, giving it a fresh, modern look and feel. But, how will you&#160;be able to take advantage of this new feature? In this post, I&#8217;m going [...]]]></description>
				<content:encoded><![CDATA[<img width="604" height="270" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/webgrid-final-604x270.png" class="attachment-post-thumbnail wp-post-image" alt="webgrid-final" style="float:right; margin:0 0 10px 10px;" /><p>We&#8217;ve recently released&nbsp;our new Unified Theming for WebUI, which will dramatically alter the look and feel of your WebUI-powered apps, giving it a fresh, modern look and feel. But, how will you&nbsp;be able to take advantage of this new feature? In this post, I&#8217;m going to show you&nbsp;how convert the <a href="http://live.intersoftsolutions.com/cs/WebGrid/Enterprise.aspx?noframe=1&amp;path=/WebGrid/Top%20Features/Rich%20User%20Interface" target="_blank">WebGrid Enterprise sample</a>&nbsp;to use the new WebUI Unified Theming. At the end of this post, you should&nbsp;have&nbsp;the following result.</p>
<p><img class="alignnone size-full wp-image-6488" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/webgrid-unified-theming.png" alt="webgrid-unified-theming.png" width="1958" height="702"></p>
<p>Here&#8217;s a&nbsp;single image of the revamped sample&nbsp;in full Unified Theming glory.</p>
<p><img class="alignnone size-full wp-image-6493" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/webgrid.png" alt="webgrid.png" width="1078" height="702"></p>
<p>Ready to begin?</p>
<h1>What You&#8217;ll Need</h1>
<p>Before you begin, you&#8217;ll need to ensure&nbsp;that you have&nbsp;properly installed Visual Studio 2012 or higher and have installed Premier Studio 2016 (or higher). If not, feel free to&nbsp;perform <a href="http://www.intersoftsolutions.com/RequestTrial" target="_blank">Request Trial</a> from our site to get the latest installer. Or, if you&nbsp;have purchased a subscription, you&nbsp;can easily obtain the latest version of the installer by simply <a href="http://www.intersoftsolutions.com/Account" target="_blank">signing in to your account</a>.</p>
<h1>Let&#8217;s Begin.</h1>
<p>In overview, here&#8217;s what we&#8217;re&nbsp;going to accomplish:</p>
<ul>
<li>Create a&nbsp;new Unified Theming project using the new Project Template.</li>
<li>Import&nbsp;the existing&nbsp;WebGrid&#8217;s Enterprise sample (from the old sample) to the new project.</li>
<li>Remove all style-related&nbsp;attributes.</li>
<li>Convert the sample to use the new Unified Theming.</li>
</ul>
<h1>Create New&nbsp;Unified Theming Project</h1>
<p>Open up Visual Studio and create a new Unified Theming project by selecting <strong>Visual C#</strong>,&nbsp;<strong>Intersoft Solutions</strong>,&nbsp;<strong>ASP.NET</strong>,&nbsp;<strong>Intersoft Unified&nbsp;Empty Web Application</strong>, as&nbsp;shown in the illustration below. Let&#8217;s call this project <strong>FirstUnifiedTheming</strong> and hit OK.</p>
<p><img class="alignnone size-full wp-image-6519" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/new-project.png" alt="new-project.png" width="1614" height="1136"></p>
<p>Let&#8217;s import the Enterprise.aspx from the&nbsp;old sample to&nbsp;our project. To do this,&nbsp;right-click on&nbsp;your solution, then choose <strong>Add</strong>,&nbsp;<strong>Existing Item</strong>.</p>
<p><img class="alignnone size-full wp-image-6526" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/add-existing-item.png" alt="add-existing-item.png" width="1450" height="603"></p>
<p>Navigate to&nbsp;<strong>C:\Program Files (x86)\Intersoft Solutions\Samples\For ASP.NET\ISNet.WebUI.Samples\cs\WebGrid</strong> and&nbsp;select <strong>Enterprise.aspx</strong>. Just select the .aspx file and its code-behind will be automatically added as well.</p>
<p><img class="alignnone size-full wp-image-6531" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/enterprise.png" alt="enterprise.png" width="1538" height="1034"></p>
<p>Now that you have&nbsp;the file imported,&nbsp;we need to convert it so that it will be compatible with Web Application.&nbsp;Select the file, then go to <strong>Project</strong>, then choose <strong>Convert to Web Application</strong> as shown below.</p>
<p><img class="alignnone size-full wp-image-6539" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/convert-to-web-application.png" alt="convert-to-web-application.png" width="1976" height="716"></p>
<h1>Removing Unnecessary Styles</h1>
<p>By default,&nbsp;the&nbsp;Unified&nbsp;Theming project template provides a handy&nbsp;<strong>App.master</strong> file contained in the <strong>Master</strong> folder. So, we can use this master file for our&nbsp;imported sample. Change the&nbsp;<strong>MasterPageFile</strong>&nbsp;for the <strong>Enterprise.aspx</strong> from <strong>./DefaultMaster.master</strong> to <strong>~/Master/App.master.</strong></p>
<p><img class="alignnone size-full wp-image-6549" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/master-page-file.png" alt="master-page-file.png" width="1088" height="155"></p>
<p>Next, search for this file that contains any &#8220;style&#8221; attributes. To do this, press <strong>Ctrl+F</strong> on your keyboard and search for &#8220;<strong>style</strong>&#8221; (without the quotes).</p>
<p>Here&nbsp;are the list of attributes / elements that you have&nbsp;to remove within this file:</p>
<ul>
<li>
<p class="p1"><strong>UseDefaultStyle<span class="s1">=&#8221;True&#8221;</span></strong></p>
</li>
<li>
<p class="p1"><strong>DefaultStyleMode<span class="s1">=&#8221;Elegant&#8221;</span></strong></p>
</li>
<li>
<p class="p1"><strong><span class="s1">&lt;</span><span class="s2">CellStyle</span> HorizontalAlign<span class="s1">=&#8221;Right&#8221;&gt;</span><span class="s1">&lt;/</span><span class="s2">CellStyle</span><span class="s1">&gt;</span></strong></p>
</li>
<li><strong><span class="s1">&lt;</span><span class="s2">CellStyle</span> HorizontalAlign<span class="s1">=&#8221;Center&#8221;&gt;</span><span class="s1">&lt;/</span><span class="s2">CellStyle</span><span class="s1">&gt;</span></strong></li>
</ul>
<p>Note that these&nbsp;are the&nbsp;attributes contained in this file. In your existing project there might&nbsp;be more &#8220;style-related&#8221; attributes that you need to remove.</p>
<p>Next, let&#8217;s fix the&nbsp;code-behind so that&nbsp;this project is compile-able. To do this, open <strong>Enterprise.aspx.cs</strong>, and delete this line.</p>
<p class="p1"><strong><span class="s1">using</span> <span class="s2">Intersoft</span>.SampleFramework.V2009;</strong></p>
<p class="p1">Also remove, the three methods: <strong>WebGrid1_AddRow, WebGrid1_UpdateRow, WebGrid1_DeleteRow</strong>. Then, in <strong>Enterprise.aspx</strong>, remove this line.</p>
<p class="p1"><img class="alignnone size-full wp-image-6716" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/delete-enterprise.png" alt="delete-enterprise.png" width="1823" height="1004"></p>
<p>Since this is a <strong>Web Application</strong> project, not a&nbsp;<strong>Web Site</strong> project, you&#8217;ll need to rebuild it once before you can&nbsp;preview the result in the browser. To rebuild the project, right-click on the project/solution, and hit <strong>Rebuild</strong>.</p>
<p><img class="alignnone size-full wp-image-6587" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/rebuild.png" alt="rebuild.png" width="1278" height="379"></p>
<p>After the rebuild process is done, let&#8217;s try viewing this project in the browser. Right-click on the <strong>Enterprise.aspx</strong> file and choose <strong>View in Browser</strong>.</p>
<p><img class="alignnone size-full wp-image-6591" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/view-in-browser.png" alt="view-in-browser.png" width="1042" height="519"></p>
<p>When you run the project, you&#8217;ll get the following error.</p>
<p><img class="alignnone size-full wp-image-6595" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/isdatasource-error.png" alt="isdatasource-error.png" width="1784" height="1136"></p>
<p>This indicates that the WebGrid was unable to connect with the data source. Let&#8217;s resolve this by <strong>adding the necessary database</strong> file and modifying the <strong>Web.config</strong>&#8216;s connection string.</p>
<h1>Adding the Database</h1>
<p>To make our project&#8217;s file organization neat and less cluttered, let&#8217;s create a new folder called&nbsp;<strong>Common</strong>&nbsp;at the root of the project. Right-click on the project and select <strong>Add</strong>, <strong>New Folder</strong>.</p>
<p><img class="alignnone size-full wp-image-6602" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/add-folder.png" alt="add-folder.png" width="1457" height="704"></p>
<p>Give it a name of <strong>Common</strong>. Let&#8217;s add the database file used for the project. Right-click on the newly-created <strong>Common</strong> folder and choose <strong>Add</strong>, <strong>Existing Item</strong>.</p>
<p><img class="alignnone size-full wp-image-6606" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/add-existing-database.png" alt="add-existing-database.png" width="1384" height="436"></p>
<p>Choose the file named <strong>dsEnterprise.xsd</strong> contained in the&nbsp;<strong>C:\Program Files (x86)\Intersoft Solutions\Samples\For ASP.NET\ISNet.WebUI.Samples\cs\WebGrid\App_Code</strong>.</p>
<p><img class="alignnone size-full wp-image-6619" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/add-dsenterprise.png" alt="add-dsenterprise.png" width="1538" height="1035"></p>
<p>Repeat the process for <strong>AppData</strong> folder. Right-click the AppData folder, choose <strong>Add</strong>, <strong>Existing Item</strong>. Then choose&nbsp;<strong>Northwind.mdb</strong>&nbsp;file contained in&nbsp;<strong>C:\Program Files (x86)\Intersoft Solutions\Samples\For ASP.NET\ISNet.WebUI.Samples\cs\WebGrid\App_Data</strong>.</p>
<p><img class="alignnone size-full wp-image-6610" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/add-northwind.png" alt="add-northwind.png" width="1538" height="1035"></p>
<p>Next, we need to modify the <strong>SchemaType</strong> and <strong>TypeName</strong> of <strong>ISDataSource</strong> so that it will point to the correct&nbsp;database file. To do this, open the <strong>Enterprise.aspx</strong> file and&nbsp;perform a&nbsp;Replace&nbsp;All for the following string:&nbsp;<strong>SchemaName=&#8221;dsEnterprise&nbsp;</strong>(the unclosed quotes are intentional) to&nbsp;<strong>SchemaName=&#8221;FirstUnifiedTheming.Common.dsEnterprise </strong>(again, the unclosed quotes are intentional).</p>
<p>Repeat the process&nbsp;one more time for the <strong>TypeName</strong>. Search for&nbsp;<strong>TypeName=&#8221;dsEnterprise&nbsp;</strong>and replace it with&nbsp;<strong>TypeName=&#8221;FirstUnifiedTheming.Common.dsEnterprise</strong>. Save the file.</p>
<p>Lastly, let&#8217;s add a connection string in the <strong>Web.config</strong> file for this&nbsp;a new connection the Northwind database. Open up Web.config and add the following connection string to the <strong>ConnectionStrings</strong> node:</p>
<p class="p1">&lt;<span class="s1">add</span> <span class="s2">name</span>=<span class="s3">&#8220;</span>NorthWindConnectionString<span class="s3">&#8220;</span> <span class="s2">connectionString</span>=<span class="s3">&#8220;</span>Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\NorthWind.mdb;Persist Security Info=True<span class="s3">&#8220;</span> <span class="s2">providerName</span>=<span class="s3">&#8220;</span>System.Data.OleDb<span class="s3">&#8220;</span>/&gt;</p>
<p class="p1"><img class="alignnone size-full wp-image-6638" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/connection-string.png" alt="connection-string.png" width="1803" height="511"></p>
<h1 class="p1">You&#8217;re Almost There.</h1>
<p>We&#8217;ve&nbsp;roughly finished the migration,&nbsp;but it&#8217;s still&nbsp;missing a few final touches. For now,&nbsp;refresh your browser to see the result.</p>
<p><img class="alignnone size-full wp-image-6644" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/webgrid-initial.png" alt="webgrid-initial.png" width="1784" height="1136"></p>
<p>As you can see, the&nbsp;WebGrid&nbsp;is now applied with Unified Theming. But there are are still two issues left:</p>
<ul>
<li>Adjusting the height of the WebGrid</li>
<li>Providing the missing icons.</li>
</ul>
<p>Let&#8217;s address these issues. To adjust the height of the WebGrid, you can easily do so by modifying the <strong>Height</strong> attribute of the WebGrid inside the <strong>Enterprise.aspx</strong> file. Give it a good value, perhaps <strong>90%</strong>.</p>
<p><img class="alignnone size-full wp-image-6651" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/webgrid-height.png" alt="webgrid-height.png" width="1596" height="475"></p>
<p>We also need to modify the height of the parent container to 100%. To do this, open up <strong>App.master</strong> inside the&nbsp;<strong>Master</strong> folder and add&nbsp;inline-style for the&nbsp;parent container with height&nbsp;set to 100%.</p>
<p><img class="alignnone size-full wp-image-6680" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/app-master-height.png" alt="app-master-height.png" width="1082" height="881"></p>
<p>Next, let&#8217;s provide the missing image icons. To do this, right click on the <strong>Assets</strong> folder and select <strong>Add</strong>, <strong>New Folder</strong>.</p>
<p><img class="alignnone size-full wp-image-6653" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/add-images-folder.png" alt="add-images-folder.png" width="1501" height="559"></p>
<p>Give it a name of <strong>images</strong>. Add the following&nbsp;images from this folder <strong>C:\Program Files (x86)\Intersoft Solutions\Samples\For ASP.NET\WebUI.Unified.Samples\assets\images</strong>:</p>
<ul>
<li><strong>Customer.svg</strong></li>
<li><strong>order-detail.svg</strong> (rename this file to&nbsp;<strong>order-details.svg</strong>)</li>
<li><strong>orders.svg</strong></li>
<li><strong>shipvia1.svg</strong></li>
<li><strong>shipvia2.svg</strong></li>
<li><strong>shipvia3.svg</strong></li>
</ul>
<p>You should have the following images as follows.</p>
<p><img class="alignnone size-full wp-image-6662" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/images.png" alt="images.png" width="250" height="250"></p>
<p>Lastly,&nbsp;perform a Find and Replace for the following string inside the <strong>Enterprise.aspx</strong> file. Replace <strong>./images</strong> with<strong> ~/assets/images</strong>.</p>
<p><img class="alignnone size-full wp-image-6670" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/find-and-replace-assets.png" alt="find-and-replace-assets.png" width="250" height="222"></p>
<p>Then, another Find and Replace for <strong>.gif</strong> to <strong>.svg</strong>. Save the file, rebuild the project and refresh your browser.</p>
<p><img class="alignnone size-full wp-image-6685" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/webgrid-final.png" alt="webgrid-final.png" width="1784" height="1136"></p>
<p>We&#8217;ve successfully set the&nbsp;WebGrid height to fill 90% of the parent container, in which the parent container has been set to 100% height, as well as providing the correct SVG icons for the WebGrid.</p>
<p>One&nbsp;cool thing about&nbsp;the SVG icons are they&#8217;re actually vector icons (SVG is a short form of Scalable Vector Graphics), which will retain its crispiness and hi-res colors when&nbsp;viewed in any devices with varying screens resolutions. To do this, try bumping up the zoom level to 400% or higher.</p>
<p><img class="alignnone size-full wp-image-6691" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/zoom.png" alt="zoom.png" width="1784" height="1136"></p>
<h1>Conclusion</h1>
<p>As you can see, adopting the Unified Theme in your project is quite simple and easy. To learn more about Unified Theming, I highly recommend you to&nbsp;explore the documentation about <a href="http://developer.intersoftsolutions.com/display/WebUI/Unified+Theming" target="_blank">Unified Theming</a>. You can find the link to the finished sample <a href="http://developer.intersoftsolutions.com/download/attachments/24281754/FirstUnifiedTheming.zip?api=v2" target="_blank">here</a>.</p>
<p>In this post, we&#8217;ve learned how to&nbsp;create a&nbsp;Unified Theme project in the&nbsp;shortest and fastest manner using the project templates. In smaller projects, this approach is feasible, but not for larger projects. If you wish to focus solely on migrating your project to Unified Theming, you can&nbsp;follow this documentation: <a href="http://developer.intersoftsolutions.com/display/WebUI/Applying+Unified+Modern+Theme+in+WebUI+Application" target="_blank">Applying Unified Modern Theme in WebUI Application</a>.</p>
<p>You can also find&nbsp;local working samples once you&#8217;ve installed Premier Studio 2016 on your computer. To get started quickly with the local samples, please read my previous&nbsp;<a href="http://blog.intersoftsolutions.com/2016/03/the-all-new-webui-experience-it-yourself/" target="_blank">blog post</a>.</p>
<p>Should you have any questions, feel free to initiate a <a href="http://www.intersoftsolutions.com/#livechat" target="_blank">live chat session with us</a> and our team will get back to you as fast as we can.</p>
<p>Till next post,<br />
Nicholas Lie</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2016/03/migrating-to-webui-unified-theming/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The All-new WebUI. Experience It Yourself.</title>
		<link>http://blog.intersoftsolutions.com/2016/03/the-all-new-webui-experience-it-yourself/</link>
		<comments>http://blog.intersoftsolutions.com/2016/03/the-all-new-webui-experience-it-yourself/#comments</comments>
		<pubDate>Thu, 03 Mar 2016 04:26:48 +0000</pubDate>
		<dc:creator><![CDATA[Nicholas Lie]]></dc:creator>
				<category><![CDATA[2016 R1]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[WebUI]]></category>
		<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[New Releases]]></category>
		<category><![CDATA[WebCombo]]></category>
		<category><![CDATA[WebDesktop]]></category>
		<category><![CDATA[WebEssentials]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebInput]]></category>
		<category><![CDATA[WebScheduler]]></category>
		<category><![CDATA[WebTextEditor]]></category>
		<category><![CDATA[WebTreeView]]></category>
		<category><![CDATA[WebUI Studio]]></category>
		<category><![CDATA[WebUI Studio ASP.NET]]></category>

		<guid isPermaLink="false">http://blog.intersoftsolutions.com/?p=5685</guid>
		<description><![CDATA[Our months of hard work finally paid off. It&#8217;s finally here. With excellent craftsmanship and fine attention to detail, we&#8217;re very proud to announce the all-new and powerful WebUI 2016. The entire WebUI lineup consisting of highly-advanced 40+ web components now finally receives a truly deserved facelift. [...]]]></description>
				<content:encoded><![CDATA[<img width="604" height="270" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-01-at-3.22.29-PM-604x270.png" class="attachment-post-thumbnail wp-post-image" alt="Screen Shot 2016-03-01 at 3.22.29 PM" style="float:right; margin:0 0 10px 10px;" /><p>Our months of hard work finally paid off. It&#8217;s finally here. With excellent craftsmanship and fine attention to detail, we&#8217;re very proud to announce the all-new and powerful WebUI 2016. The entire WebUI lineup consisting of highly-advanced 40+ web components now finally receives a truly deserved facelift.</p>
<p><img class="alignnone size-full wp-image-5706" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-01-at-3.22.29-PM.png" alt="Screen Shot 2016-03-01 at 3.22.29 PM.png" width="1768" height="1192" /></p>
<h1>Accessing the New WebUI Live Experience</h1>
<p>For so long, customers have enjoyed our live WebUI demos through <a href="http://live.intersoftsolutions.com" target="_blank">http://live.intersoftsolutions.com</a>. While this experience is adequate, being redirected to another site for a hands-on experience just won&#8217;t cut it anymore. So we decided to integrate the new samples right our website. That&#8217;s right, now you can experience the new WebUI samples with the gorgeous unified modern theme, right from our website.</p>
<p><img class="alignnone size-full wp-image-5726" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-9.56.28-AM.png" alt="Screen Shot 2016-03-02 at 9.56.28 AM.png" width="1522" height="880" /></p>
<p>Don&#8217;t worry, we&#8217;ve put these buttons everywhere, so you can easily access them from various pages in WebUI, although it is very much recommended to access them from <a href="http://www.intersoftsolutions.com/WebUI" target="_blank">/WebUI</a>. Should you miss this experience and open the old live samples, you&#8217;ll be greeted with the following dialog box.</p>
<p><img class="alignnone size-full wp-image-5732" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-10.07.46-AM.png" alt="Screen Shot 2016-03-02 at 10.07.46 AM.png" width="1604" height="828" /></p>
<p>Without further ado, let&#8217;s get right onto the new WebUI Live Experience.</p>
<h1>The Home Screen</h1>
<p>Right when you launch the new Live Experience, you&#8217;ll be greeted with a nice and modern blurred background, showcasing the flagship products of WebUI. This experience works best on modern desktop browsers supporting HTML5 and CSS3.</p>
<p><img class="alignnone size-full wp-image-5741" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-10.27.31-AM.png" alt="Screen Shot 2016-03-02 at 10.27.31 AM.png" width="2430" height="1596" /></p>
<p>If you click on products such as WebDesktop and WebEssentials, you can also find a grid of sub-components in them.</p>
<p><img class="alignnone size-full wp-image-5755" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-10.36.51-AM.png" alt="Screen Shot 2016-03-02 at 10.36.51 AM.png" width="1776" height="1410" /></p>
<h1>WebGrid</h1>
<p>When you launch WebGrid for the first time, you&#8217;ll be greeted with the First Experience.</p>
<p><img class="alignnone size-full wp-image-5758" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-10.33.25-AM.png" alt="Screen Shot 2016-03-02 at 10.33.25 AM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">This first experience sample demonstrates many of the top UI features available in WebGrid, combined with some unique features such as column freezing, filter suggestion and more.</span></p>
<p class="p1"><span class="s1">Some of the top features demonstrated in this sample are:</span></p>
<ul class="ul1">
<li class="li1"><span class="s1">Sleek look and feel with the all-new &#8220;Elegant&#8221; Default Style. The Default Style feature significantly reduces page output size by eliminating in-line styles. Try to view source and notice there are no styles generated in the page level.</span></li>
<li class="li1"><span class="s1">Improved user interface with a new set of fresh icons, background images and UI elements.</span></li>
<li class="li1"><span class="s1">New context menu engine. Try to right click on the Grid area to experience the new context menu system.</span></li>
<li class="li1"><span class="s1">LiveFreeze™ column freezing feature. The only column freezing implementation that perfectly simulates Excel® freezing behavior.</span></li>
<li class="li1"><span class="s1">Automatic Filter Suggestion. Try to right click on a cell (eg, &#8220;Owner&#8221;), then choose one of the available filter options. The suggested filter options are based on selected cell&#8217;s data type and value.</span></li>
<li class="li1"><span class="s1">Filter Status Indicator. When one or more columns are filtered, notice that the filter indicator status is changed to &#8220;Filtered&#8221;. This indicator helps end users to understand the current state of filters without has to display filter bar. You can click on the filter status indicator to toggle the filter state.</span></li>
<li class="li1"><span class="s1">SmartWebResources™. This innovative technology enable this sample to run without dependencies to &#8220;physical&#8221; client resources. All client resources such as scripts and images are retrieved directly from resource assembly.</span></li>
<li class="li2"><span class="s3">Declarative datasource control binding. Notice that there are no codes required for the data binding operation (see C# and VB tab).</span></li>
</ul>
<h1>Samples Navigation Experience</h1>
<p>To navigate between samples, you can easily use the arrows on the left and right-hand side of the screen, or use the menu button on the top-left corner of the screen. This will open the Menu panel and you can easily jump between samples.</p>
<p><img class="alignnone size-full wp-image-5776" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-11.13.01-AM.png" alt="Screen Shot 2016-03-02 at 11.13.01 AM.png" width="1452" height="886" /></p>
<p>If you wish to go back the controls grid, simply click the Home button. Should you encounter any problems or hassles with the samples, feel free to chat with us directly using the <a href="http://www.intersoftsolutions.com/#livechat">live messenger</a> on the bottom-right corner.</p>
<h1>WebCombo</h1>
<p>This the First Experience when you launch the WebCombo sample.</p>
<p><img class="alignnone size-full wp-image-5785" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-11.16.58-AM.png" alt="Screen Shot 2016-03-02 at 11.16.58 AM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">This sample demonstrates the unified modern theme of WebCombo and many of its key features such as SmartWebResources™ and declarative datasource control binding.</span></p>
<p class="p2"><span class="s2">Notice that there are no code required for the data binding operation (see C# and VB tab). Try experimenting with the WebCombo controls in this page to see some unique features in action. For instance, Reports-To is using multiple selection feature combined with image column type.</span></p>
<h1 class="p2">WebInput</h1>
<p>This is the First Experience when you launch the WebInput sample.</p>
<p><img class="alignnone size-full wp-image-5790" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-11.18.31-AM.png" alt="Screen Shot 2016-03-02 at 11.18.31 AM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">This sample demonstrates the unified modern theme of WebInput and its key features.</span></p>
<p class="p1"><span class="s1">Some of the new features demonstrated in this sample are:</span></p>
<ul class="ul1">
<li class="li1"><span class="s1">Sleek look and feel with the all-new &#8220;Elegant&#8221; Default Style. The Default Style feature significantly reduces page output size by eliminating in-line styles. Try to view source and notice there are no styles generated in the page level.</span></li>
<li class="li1"><span class="s1">Ordinary input text and multiline input text features, like demonstrated in FirstName, LastName, Address, City, Country fields.</span></li>
<li class="li1"><span class="s1">Display and edit format features, like demonstrated in Birth Date field.</span></li>
<li class="li1"><span class="s1">Other edit format feature, like demonstrated in First Name, Last Name, Phone, Extension fields.</span></li>
</ul>
<p class="p2"><span class="s3">This sample also demonstrate integration between WebInput and .NET Validator Control such as RequiredValidator and CompareValidator.</span></p>
<h1 class="p2">WebScheduler</h1>
<p>This is the First Experience when you launch the WebScheduler sample.</p>
<p><img class="alignnone size-full wp-image-5793" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-11.19.33-AM.png" alt="Screen Shot 2016-03-02 at 11.19.33 AM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">This sample is designed to model a car-rental tracking scenario – demonstrating how WebScheduler performs in real-world enterprise application. Bound to over 3000 events, WebScheduler delivers responsive user experiences regardless of the data size.</span></p>
<p class="p1"><span class="s1">The powerful JSON technology and smart client paging rendering significantly improved the overall WebScheduler performance to a new level not possible before. This sample combines both the ViewPort™ and EventPageSize™ Client Paging rendering enabling WebScheduler to load in a flash.</span></p>
<p class="p2"><span class="s2">Try to play around with the scheduler. Use the upper right vehicle locator for a quick jump. Click on the visual indicator on the resources area to populate the car information.</span></p>
<h1 class="p2">WebDesktop</h1>
<p>This is the First Experience when you launch the WebDesktop sample.</p>
<p><img class="alignnone size-full wp-image-5819" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-1.10.00-PM.png" alt="Screen Shot 2016-03-02 at 1.10.00 PM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">This reference sample demonstrates the beautiful modern theme and many groundbreaking features in WebDesktopManager such as shortcuts and comprehensive window management. It also showcases the integration of various WebDesktop components to create full-fledge and immersive web applications, which include WebPaneManager, WebToolBar, WebTab, WebDialogBox, WebNotification and more. Try to double click each icon to see the WebDesktop components in action.</span></p>
<h1>WebEssentials</h1>
<p>This is the First Experience when you launch the WebEssentials sample.</p>
<p><img class="alignnone size-full wp-image-5820" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-1.10.44-PM.png" alt="Screen Shot 2016-03-02 at 1.10.44 PM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">This reference sample perfectly demonstrates WebEssentials component suite which comprised of 8 innovative controls, ranging from accordion, calendar, slider, to rating. WebEssentials enables you to create interactive and visually engaging modern web applications.</span></p>
<p class="p1"><span class="s1">In this Online Resume scenario, WebAccordion is used as the main container, dividing this lengthy form into three sections. WebProgressBar is used to indicate the section completion process. The bar will be filled as users click on next. WebCalendar is used for date input and WebSlider for selecting a specific range. WebSlidingMenu is used on the right FAQ section. Click on a question and the answer is shown in a swift and smooth sliding animation.</span></p>
<p class="p2"><span class="s2">Additionally, WebFlyPostBackManager is used to populate the section’s content on demand as users click the next button. In Section 1, WebFileUploader is used for image uploading, demonstrating its seamless AJAX upload experience.</span></p>
<h1>WebTextEditor</h1>
<p>This is the First Experience when you launch the WebTextEditor sample.</p>
<p><img class="alignnone size-full wp-image-5801" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-11.27.45-AM.png" alt="Screen Shot 2016-03-02 at 11.27.45 AM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">WebTextEditor is the industry&#8217;s first text editor that integrates intuitive writing tools, in-line spelling checker, and sophisticated uploading capability in a single interface – enabling you to rapidly build rich CMS application that delivers breakthrough, unique editing experience to your end users.</span></p>
<p class="p2"><span class="s2">This sample demonstrates tight integration with Desktop Manager, Spell Checker, File Uploader and many UI components from WebDesktop to produce sophisticated, state-of-the-art CMS application that ultimately feels like a desktop word processing application.</span></p>
<h1 class="p2">WebTreeView</h1>
<p>This is the First Experience when you launch the WebTreeView sample.</p>
<p><img class="alignnone size-full wp-image-5805" src="http://blog.intersoftsolutions.com/wp-content/uploads/2016/03/Screen-Shot-2016-03-02-at-11.29.37-AM.png" alt="Screen Shot 2016-03-02 at 11.29.37 AM.png" width="2828" height="1842" /></p>
<p class="p1"><span class="s1">WebTreeView provides rich features that lets you easily create hierarchical data presentation. This powerful control incorporates numerous unique features such as:</span></p>
<ul class="ul1">
<li class="li1"><span class="s1">Data Binding</span></li>
<li class="li1"><span class="s1">Tristate checkbox</span></li>
<li class="li1"><span class="s1">Add, edit, and delete node</span></li>
<li class="li1"><span class="s1">Drag and Drop node(s)</span></li>
<li class="li1"><span class="s1">Keyboard Navigation</span></li>
<li class="li1"><span class="s1">Load On Demand</span></li>
<li class="li1"><span class="s1">Layout Manager and Structure Manager</span></li>
<li class="li1"><span class="s1">Auto Postback</span></li>
<li class="li1"><span class="s1">Flexible and highly customizable to meet your design needs</span></li>
<li class="li1"><span class="s1">client-side API &#8211; WebTreeView Designer</span></li>
</ul>
<p class="p2"><span class="s3">The above sample utilizes Enable Tristate CheckBox and Keyboard Navigation features.</span></p>
<h1 class="p2">Explore the Samples</h1>
<p class="p2">We hope that you liked our new samples. To start taking advantage of our best WebUI release yet, feel free to download the new Premier Studio 2016 <a href="http://www.intersoftsolutions.com/RequestTrial" target="_blank">here</a>. Happy exploring!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2016/03/the-all-new-webui-experience-it-yourself/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The next WebUI. Redesigned for the future.</title>
		<link>http://blog.intersoftsolutions.com/2015/11/the-next-webui/</link>
		<comments>http://blog.intersoftsolutions.com/2015/11/the-next-webui/#comments</comments>
		<pubDate>Fri, 13 Nov 2015 01:37:53 +0000</pubDate>
		<dc:creator><![CDATA[Nicholas Lie]]></dc:creator>
				<category><![CDATA[2015 R2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[Roadmap]]></category>
		<category><![CDATA[2015 r2]]></category>
		<category><![CDATA[roadmap]]></category>
		<category><![CDATA[WebCallOut]]></category>
		<category><![CDATA[WebCombo]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebInput]]></category>
		<category><![CDATA[WebProgressbar]]></category>
		<category><![CDATA[WebTab]]></category>
		<category><![CDATA[WebToolBar]]></category>
		<category><![CDATA[WebUI]]></category>
		<category><![CDATA[WebUI Studio]]></category>
		<category><![CDATA[webui vnext]]></category>

		<guid isPermaLink="false">http://blog.intersoftsolutions.com/?p=4989</guid>
		<description><![CDATA[The web development trend recently revolves around providing great look and feel for the users of World Wide Web. Nowadays, we see lots of beautifully-designed web components along with the rise of CSS frameworks such as Bootstrap and even Material Design. These frameworks provide a way for developers to universally theme their web [...]]]></description>
				<content:encoded><![CDATA[<img width="604" height="270" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCombo1-604x270.png" class="attachment-post-thumbnail wp-post-image" alt="WebCombo" style="float:right; margin:0 0 10px 10px;" /><p>The web development trend recently revolves around providing great look and feel for the users of World Wide Web. Nowadays, we see lots of beautifully-designed web components along with the rise of CSS frameworks such as Bootstrap and even Material Design. These frameworks provide a way for developers to universally theme their web apps, making it consistent and beautiful for their users, across the entire site.</p>
<p>WebUI Studio. Undoubtedly, this is our best-selling suite ever. With impressive range of versatile, ready-to-use components, WebUI Studio has become the industry&#8217;s benchmark for suite of web components. More than just simple controls, WebUI components are designed to be functionality-rich, making developers&#8217; lives much easier whilst bringing high-performance web components to their ASP.NET web applications.</p>
<p>Just, what if, you can incorporate these beautifully-designed elements to WebUI? At Intersoft Solutions, we take pride in our meticulously-designed user experiences. In our next biggest release ever, we&#8217;re going to bring a whole new look and feel of your web apps. Embrace the next evolution of web apps with WebUI. First-class web components meets first-class design.</p>
<h1>Advanced Functionality Meets Beautiful Design</h1>
<p>Before diving further, can you take a guess at some of these WebUI controls below?</p>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCombo1.png"><img class="alignnone wp-image-5074" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCombo1.png" alt="WebCombo" width="400" height="278" /></a></p>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebInput-DateTimeEditor.png"><img class="alignnone wp-image-5072" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebInput-DateTimeEditor.png" alt="WebInput - DateTimeEditor" width="300" height="437" /></a></p>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebToolBar.png"><img class="alignnone wp-image-5076" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebToolBar-1024x205.png" alt="WebToolBar" width="700" height="140" /></a></p>
<p>&nbsp;</p>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/webinput-calculator.png"><img class="alignnone size-large wp-image-5111" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/webinput-calculator-1024x524.png" alt="webinput calculator" width="604" height="309" /></a></p>
<p>&nbsp;</p>
<p>From the top: WebCombo, WebInput with DateTime Picker, WebToolBar, and WebInput with Calculator Editor. Gorgeous, aren&#8217;t they? And this is just the tip of the iceberg. Goodbye old-fashioned looking web applications. It&#8217;s all thanks to the new technology we&#8217;re building for the next release, called Unified Theming.</p>
<h1>Introducing WebUI Unified Theming</h1>
<p>In the current release, you can already style WebUI controls through <em>Layout Manager</em> or via API at runtime. However, you need to do the styling on each WebUI control individually which could be tedious and repetitive for dozens of controls. This is going to change in WebUI vNext. Meet our brand-new<strong> Unified Theming </strong>framework.</p>
<p>The new Unified Theming allows you to apply consistent look and feel across your entire web applications just by using a single theme definition, similar to the ones found in popular CSS frameworks. Bigger buttons, more rounded buttons, gradient-styled buttons, flat buttons, anything. You now have total control over your app&#8217;s look and feel.</p>
<p>For example, you wish to change the corner radius of a popup panel. Just configure it once, and all of the WebUI controls in your application that use the popup element will automatically apply the same look and feel. To achieve this, it requires delicate, yet rigorous engineering to ensure all 30+ components work as expected using the new unified theming feature. Not only that, the combination of settings provided with each control makes it even tougher to achieve a consistent look with whatever settings you throw at it. And yes, there&#8217;s that cross-browser support as well.</p>
<p>When we designed the unified theme, we make sure that each control works in concert with native features and behaviors of the control itself. For example, here&#8217;s how it looks when the WebCallOut Bootstrap theme is applied with various types of settings. Here&#8217;s a shot with WebCallOut&#8217;s <strong>PointingPosition</strong> set to <strong>PointingBottomRight </strong>and <strong>PointingTopLeft</strong>.</p>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCallOut-1-new.png"><img class="alignnone size-large wp-image-5091" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCallOut-1-new-1024x433.png" alt="WebCallOut-1-new" width="604" height="255" /></a></p>
<p>&nbsp;</p>
<p>And here&#8217;s another with <strong>PointingPosition</strong> set to <strong>PointingTopRight</strong> and <strong>PointingBottomLeft</strong>.</p>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCallOut-2-new.png"><img class="alignnone size-large wp-image-5092" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebCallOut-2-new-1024x433.png" alt="WebCallOut-2-new" width="604" height="255" /></a></p>
<p>&nbsp;</p>
<p>And the best of all, the Unified Theming framework leverages the industry&#8217;s most popular CSS extension language today, <a href="http://sass-lang.com">SASS</a>. Written entirely in <em>SCSS</em> syntax, we&#8217;re able to streamline all styles across 30 components, creating <em>variables</em> and <em>mixin</em> that you can easily customize. This also means that you don&#8217;t have to learn a new language to customize the styles. Instead, you can use any SASS compatible editors such as Visual Studio 2015 or Sublime.</p>
<h1>Bootstrap-themed WebUI</h1>
<p>Along with the unified theming framework, we will also ship a new Bootstrap theme for the entire WebUI components. Let&#8217;s take a look at some of the WebUI controls restyled with Bootstrap theme.</p>
<h2>WebButton</h2>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebButton1.png"><img class="alignnone wp-image-5069" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebButton1-795x1024.png" alt="WebButton" width="200" /></a></p>
<p>The rounded corners and vibrant pastel colors for the WebButtons are inspired from Bootstrap. All color schemes from mouse-over, default, disabled, and selected states are taken from Bootstrap.</p>
<h2>WebProgressBar</h2>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebProgressBar.png"><img class="alignnone size-large wp-image-5070" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebProgressBar-509x1024.png" alt="WebProgressBar" width="509" height="1024" /></a></p>
<p>These Bootstrap-themed WebProgressBar have arrived to captivate your users with vibrant, animated colors. The wide range of colors are also taken from Bootstrap. Also pay attention to the nicely shaped rounded corners of the progress bars.</p>
<h2>WebTab</h2>
<p><a href="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebTab2.png"><img class="alignnone size-large wp-image-5084" src="http://blog.intersoftsolutions.com/wp-content/uploads/2015/11/WebTab2-1024x778.png" alt="WebTab" width="604" height="459" /></a></p>
<p>Each tab in WebTab is now more spacious with generous padding on all its sides. We&#8217;ve also added various Bootstrap styles such as Frame, Frameless, Pill and Line tabs. And to make everything look really great even in hi-res display, we&#8217;ve replaced all common icons with font-based icons, all comes pre-built in the WebUI Bootstrap theme.</p>
<h1>Coming in 2015 R2</h1>
<p>What you see in this post is just a small glimpse of what&#8217;s next to come. We can&#8217;t wait to show it live to you in the next 2015 R2 release. It&#8217;s going to be the biggest release ever! Refreshing the entire WebUI lineup, a major release for Crosslight, and the launch for <a href="http://blog.intersoftsolutions.com/2015/11/a-sneak-peek-at-clientui-vnext/">ClientUI Reporting for WPF with charting</a> will be the main dish for this release. Stay tuned for more exciting updates!</p>
<p>Cheers,<br />
Nicholas Lie</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2015/11/the-next-webui/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Coming in 2011 R1: WebCombo 5 and Enhanced WebGrid for ASP.NET</title>
		<link>http://blog.intersoftsolutions.com/2011/03/coming-in-2011-r1-webcombo-5-and-enhanced-webgrid-for-asp-net/</link>
		<comments>http://blog.intersoftsolutions.com/2011/03/coming-in-2011-r1-webcombo-5-and-enhanced-webgrid-for-asp-net/#comments</comments>
		<pubDate>Fri, 25 Mar 2011 04:00:18 +0000</pubDate>
		<dc:creator><![CDATA[Jimmy Petrus]]></dc:creator>
				<category><![CDATA[2011 R1]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[asp.net]]></category>
		<category><![CDATA[Client Binding]]></category>
		<category><![CDATA[WCF Service]]></category>
		<category><![CDATA[Web Service]]></category>
		<category><![CDATA[WebCombo]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebUI Studio]]></category>

		<guid isPermaLink="false">https://intersoftpt.wordpress.com/2011/03/25/coming-in-2011-r1-webcombo-5-and-enhanced-webgrid-for-asp-net/</guid>
		<description><![CDATA[The upcoming WebUI Studio 2011 volume release will include a host of new controls across all .NET development platforms, including Silverlight, WPF, and ASP.NET. In the past few months, I’ve been actively blogging about the upcoming new controls for the Silverlight and WPF development. In [...]]]></description>
				<content:encoded><![CDATA[<img width="466" height="270" src="http://blog.intersoftsolutions.com/wp-content/uploads/2014/09/comparedatasize_thumb1-604x350.png" class="attachment-post-thumbnail wp-post-image" alt="Data size chart comparison" style="float:right; margin:0 0 10px 10px;" /><p>The upcoming WebUI Studio 2011 volume release will include a host of new controls across all .NET development platforms, including Silverlight, WPF, and ASP.NET. In the past few months, I’ve been actively blogging about the upcoming <a href="http://intersoftpt.wordpress.com/tag/clientui/">new controls</a> for the Silverlight and WPF development. In this post, I’ll unveil the new controls and key enhancements for ASP.NET platform that we will deliver in the 2011 volume release.</p>
<h2>WebCombo 5 Features Client-side Binding and Web Services Support</h2>
<p>The 2011 volume release will include a new version of our flagship ASP.NET WebCombo control. WebCombo 5 is now built upon the rock-solid <a href="http://www.intersoftpt.com/WebGrid/ClientBinding">Client Data Object Framework</a> (CDOF), the same framework that powers <a href="http://www.intersoftpt.com/WebGrid">WebGrid Enterprise 7</a> to provide rich client binding functionality. As the results, you can now use WebCombo to bind data to web services such as web services, WCF services, ADO data services, Azure or other cloud-based data services.</p>
<p>Client-side binding has a number of benefits such as producing smaller data output size between callbacks which greatly improve application’s performance in overall. Our test with various binding configuration show impressive results for client binding mode. See the following comparison chart.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2011/03/comparedatasize.png"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border-width:0;" title="Data size chart comparison" border="0" alt="Data size chart comparison" src="http://intersoftpt.files.wordpress.com/2011/03/comparedatasize_thumb.png" width="642" height="384" /></a></p>
<p>Notice that the WebCombo with any client-binding mode will reduce the data output size by 40 – 50%.</p>
<p>Another great feature that is made possible with the client-binding in WebCombo 5 is the pure client data source support. This means that you can create your own data source and bind it in the client-side, in the similar fashion as in server-side. </p>
<p>Interestingly, the client data source also enables you to retrieve data from RESTful services and bind the results to the WebCombo directly in the client-side. And the beauty of the client-binding framework is that all WebCombo features continue to work as expected, including multiple columns, auto-complete entry mode, link settings, multiple selection, and more.</p>
<p>That said, we’ve created several interesting new examples that demonstrate the power of the client-side data source. One of the examples is to retrieve photos from the Flickr through jQuery, and bind the results to the WebCombo in the client-side. See the screenshot below.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2011/03/image20.png"><img style="background-image:none;padding-left:0;padding-right:0;display:inline;padding-top:0;border-width:0;" title="Binding WebCombo to Flickr Service" border="0" alt="Binding WebCombo to Flickr Service" src="http://intersoftpt.files.wordpress.com/2011/03/image_thumb20.png" width="642" height="429" /></a></p>
<h2>Full WCF Service Support in WebGrid Enterprise 7</h2>
<p>Due to high demands, WebUI Studio 2011 will also ship with an enhanced WebGrid control for ASP.NET which includes full support for WCF data service. The WebGrid LINQ data provider has been enhanced as well to fully support data query and contract serialization in the WCF service.</p>
<p>You can now elegantly retrieve the select arguments and other passed parameters in the WCF service, which was one of the unsupported features in the existing release. With the updated WebGrid LINQ data provider, querying data requires only a few line of code, see the code example below.</p>
<p>  </p><pre class="crayon-plain-tag">[OperationContract]
[ServiceKnownType(typeof(List))]
public object GetCustomers(<strong>WcfDataSourceSelectArguments</strong> selectArguments)
{
    NorthwindDataContext context = new NorthwindDataContext();
    context.DeferredLoadingEnabled = false;
    context.ObjectTrackingEnabled = false;

    <strong>WebGridDataProvider provider = 
                   new WebGridDataProvider(context.Customers);</strong>

    return provider.<strong>Select</strong>(selectArguments);
}</pre><p></p>
<p>The client-binding, data services, LINQ providers and cloud support are significant milestones in our ASP.NET development roadmap. They are the precursor to the modern, RESTful web development that is server-pages agnostic.</p>
<p>I hope this post gives you some ideas on the new capabilities that you can add to your web applications using the client-binding and WCF support in the new WebCombo and WebGrid. As usual, comments and feedback are open.</p>
<p>Best,<br />
  <br />Jimmy </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2011/03/coming-in-2011-r1-webcombo-5-and-enhanced-webgrid-for-asp-net/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Improve Page Performance in WebGrid When Used With WebMenuBar</title>
		<link>http://blog.intersoftsolutions.com/2010/03/how-to-overcome-slow-page-performance-in-webgrid-autofitcolumns-false-with-webmenubar/</link>
		<comments>http://blog.intersoftsolutions.com/2010/03/how-to-overcome-slow-page-performance-in-webgrid-autofitcolumns-false-with-webmenubar/#comments</comments>
		<pubDate>Mon, 01 Mar 2010 10:06:26 +0000</pubDate>
		<dc:creator><![CDATA[handy23]]></dc:creator>
				<category><![CDATA[2008 R2]]></category>
		<category><![CDATA[2009 R2]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Style]]></category>
		<category><![CDATA[WebDesktop]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebMenuBar]]></category>
		<category><![CDATA[WebToolBar]]></category>

		<guid isPermaLink="false">http://intersoftpt.wordpress.com/?p=1150</guid>
		<description><![CDATA[Recently some customers reported that they experienced performance issue in their page which contains WebGrid along with WebMenuBar control. The issue is noticable when using Internet Explorer browser to view the page. After further research, this performance issue occured only when the Grid has AutoFitColumns [...]]]></description>
				<content:encoded><![CDATA[<p>Recently some customers reported that they experienced performance issue in their page which contains WebGrid along with WebMenuBar control. The issue is noticable when using Internet Explorer browser to view the page. After further research, this performance issue occured only when the Grid has <strong>AutoFitColumns</strong> property set to true while the WebMenuBar is using predefined styles that produced from the server-side settings.</p>
<p>Apparently, Internet Explorer has a serious flaw in performance when a script is trying to add styles programmatically while loading, and at the same time when layouting is performed by other scripts.</p>
<p>To eliminate the performance issue, all styles in WebMenuBar should be defined as CssClass instead of using server-side predefined styles.</p>
<p>For comparison, I have attached two samples (with and without CssClass). Run the <a href="http://www.intersoftpt.com/tdn/downloads/Performance.zip">samples </a>and compare the performance difference between them.</p>
<p>Note: This technique also works on standalone WebToolBar which causes the same issue.</p>
<p>Regards,<br />
Handy.<br />
Support Engineer.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2010/03/how-to-overcome-slow-page-performance-in-webgrid-autofitcolumns-false-with-webmenubar/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Virtual Group Paging with Client Binding – In Depth</title>
		<link>http://blog.intersoftsolutions.com/2010/02/virtual-group-paging-with-client-binding-in-depth/</link>
		<comments>http://blog.intersoftsolutions.com/2010/02/virtual-group-paging-with-client-binding-in-depth/#comments</comments>
		<pubDate>Wed, 10 Feb 2010 15:20:41 +0000</pubDate>
		<dc:creator><![CDATA[Jimmy Petrus]]></dc:creator>
				<category><![CDATA[2009 R2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[Client Binding]]></category>
		<category><![CDATA[Group Row Paging]]></category>
		<category><![CDATA[Virtual Load]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebGrid Enterprise 7 ASP.NET]]></category>

		<guid isPermaLink="false">http://intersoftpt.wordpress.com/?p=1113</guid>
		<description><![CDATA[As we’ve just released WebUI Studio 2009 R2 service pack, you can now download and try many exciting new features that we included in the release. Read more about the new release here. One of the much anticipated new features is the virtual group paging [...]]]></description>
				<content:encoded><![CDATA[<img width="343" height="215" src="http://blog.intersoftsolutions.com/wp-content/uploads/2014/09/configure_virtualload_thumb1.png" class="attachment-post-thumbnail wp-post-image" alt="Configure_VirtualLoad" style="float:right; margin:0 0 10px 10px;" /><p>As we’ve just released WebUI Studio 2009 R2 service pack, you can now download and try many exciting new features that we included in the release. Read more about the new release <a href="http://www.intersoftpt.com/Corporate/PressRelease.aspx?page=PressRelease&amp;PressID=ab6b7595-1dc2-47c8-ac91-d513ed714888" target="_blank">here</a>.</p>
<p>One of the much anticipated new features is the virtual group paging capability that we shipped in the service pack, which I’ve discussed in my <a href="http://intersoftpt.wordpress.com/2010/01/23/introducing-virtual-group-paging-in-webgrid-7/" target="_blank">previous blog post</a>. In this post, I’ll show you the step-by-step walkthrough to use the virtual group paging along with client binding in your application.</p>
<p>The following walkthrough presumes you have been familiar with the client binding and batch update feature that introduced in the initial WebGrid 7 release. To save time and space, this walkthrough will be focused only on the new group paging features. If you would like to see the walkthrough for client binding and batch update, please refer to WebGrid 7 <a href="http://support.intersoftpt.com/Docs/WebGrid/7.0.7200/Configuring%20client-binding%20using%20ServerDataSource%20mode.html" target="_blank">online documentation</a>.</p>
<h2>Configuring WebGrid for Virtual Load and Group Row Paging</h2>
<p>In this walkthrough, I’m going to use the ClientBinding_SmartBatchUpdate.aspx sample that shipped in the initial WebGrid 7 release. To work with the sample, launch the <strong>C# Samples</strong> which is accessible from WebGrid 7 program group in the start menu.</p>
<p>Once you got the sample ready in your Visual Studio IDE, click on the WebGrid instance and open Property Window.</p>
<p>The sample used classic paging mode, so our first step is to change the paging mode to <strong>VirtualLoad</strong> since the group row paging is an integral part of VirtualLoad paging. To set the paging mode, expand <strong>LayoutSettings</strong> and set the <strong>PagingMode</strong> property to VirtualLoad. See below.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/02/configure_virtualload.png"><img style="display:inline;border-width:0;" title="Configure_VirtualLoad" border="0" alt="Configure_VirtualLoad" src="http://intersoftpt.files.wordpress.com/2010/02/configure_virtualload_thumb.png" width="343" height="215" /></a> </p>
<p>The next step is to enable the group row paging, customize the group row paging size, and optionally enable the preload group totals as well as other client binding related settings.</p>
<p>Still in the Visual Studio’s Property Window, expand the <strong>ClientBindingSettings</strong> property. You’ll find most of the client-binding related settings centralized in this property group. Enable the group row paging by simply setting its property to true and configure other settings to follow the screenshot below.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/02/configure_clientbinding.png"><img style="display:inline;border-width:0;" title="Configure_ClientBinding" border="0" alt="Configure_ClientBinding" src="http://intersoftpt.files.wordpress.com/2010/02/configure_clientbinding_thumb.png" width="335" height="272" /></a> </p>
<p>We’re done with the WebGrid-level configuration.</p>
<h2>Configuring WebGrid LINQ Provider</h2>
<p>After configuring the WebGrid to use proper client binding settings and group row paging, the next step is to configure the new LINQ provider in your application.</p>
<p>To use WebGrid LINQ provider in your application, add the <strong>ISNet.Data.Linq</strong> assembly from WebGrid installation folder to your application’s Bin folder. If you’re installing using default setting, the new assembly should be located in <em>C:Program FilesIntersoft SolutionsWebUI Studio for ASP.NETWebGrid.NET 7.0Bin</em>.</p>
<p>Note that this is a new assembly shipped in the service pack installer. Download the latest service pack installer <a href="http://www.intersoftpt.com/WebUIStudio/Try" target="_blank">here</a>, or obtain the assembly in the provided samples in the last section.</p>
<h2>Handling Data Operations with LINQ-to-SQL Classes</h2>
<p>Since we’re using client binding mode with <strong>WebService</strong> datasource, we need to specify the <strong>ServiceUrl </strong>property to the path of the web service that handles data operations requested by WebGrid. The sample used in the walkthrough is using <strong>WebService.asmx</strong>. </p>
<p>In this walkthrough, we’re going to define the service methods used to perform data selection and batch update. The select method is defined in <strong>SelectMethod</strong>, while the batch update method is defined in <strong>BatchUpdateMethod</strong>. The property settings can be seen in the screenshot below.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/02/configure_servicemethods.png"><img style="display:inline;border-width:0;" title="Configure_ServiceMethods" border="0" alt="Configure_ServiceMethods" src="http://intersoftpt.files.wordpress.com/2010/02/configure_servicemethods_thumb.png" width="312" height="154" /></a></p>
<p>After wiring the service methods, the final step is to write each web method in the web service that corresponds to the specified service methods above.</p>
<p>Open the code-behind file of the web service to your Visual Studio IDE by right clicking on <strong>App_CodeWebService.asmx.cs</strong> then choose View Code.</p>
<p>Write the code for the data selection such as below.</p>
<p>  </p><pre class="crayon-plain-tag">[WebMethod]
public object <strong>GetPagedBugs</strong>(DataSourceSelectArguments selectArguments)
{
    <strong>BugTrackerModelDataContext</strong> context = new BugTrackerModelDataContext();
    context.DeferredLoadingEnabled = false;

    <strong>WebGridDataProvider</strong> provider = new WebGridDataProvider(context.Bugs.AsQueryable());
    object data = provider.<strong>Select</strong>(selectArguments);

    if (data != null)
         return data;

    throw new InvalidOperationException(&quot;Unsupported operation type!&quot;);
}</pre><p></p>
<p>So simple, isn&#8217;t it?</p>
<p>As I’ve mentioned in my previous <a href="http://intersoftpt.wordpress.com/2010/01/23/introducing-virtual-group-paging-in-webgrid-7/" target="_blank">post</a>, the <strong>Select</strong> method of the WebGrid’s LINQ provider automatically handles all data operations – from data paging, grouping, filtering, aggregate computation, group header selection, and group row paging.</p>
<p>I’ve also mentioned that the LINQ provider supports data transaction operations too – such as Insert, Update, Delete and BatchUpdate. The following code shows how to perform batch update using the new data provider.</p>
<p></p><pre class="crayon-plain-tag">[WebMethod]
[GenerateScriptType(typeof(Bug))]
public TransactionResult <strong>UpdateBugs</strong>(List changes)
{
    <strong>BugTrackerModelDataContext</strong> context = new <strong>BugTrackerModelDataContext</strong>();
    <strong>WebGridDataProvider</strong> provider = new WebGridDataProvider(context.Bugs.AsQueryable());

    return provider.<strong>BatchUpdate</strong>(changes);
}</pre><p></p>
<p>It’s as simple as that – thanks to the bare-metal architecture built on the client binding, batch update, virtual load paging and the LINQ data provider to produce this level of component integration.</p>
<p>Now save your changes and view your page in the browser. Try to group the column by Operating System and you should see something like the following.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/02/webgrid_grouprowpaging.png"><img style="display:inline;border-width:0;" title="WebGrid with GroupRowPaging" border="0" alt="WebGrid with GroupRowPaging" src="http://intersoftpt.files.wordpress.com/2010/02/webgrid_grouprowpaging_thumb.png" width="644" height="261" /></a> </p>
<p>So far, you have learnt how to enable group row paging, customize the page size, activate group total preloading, and use the new LINQ data provider to simplify client-binding data operations. Your next step is to test the new features and implement them in your web apps.</p>
<h2>Download Samples</h2>
</p>
<p>In case you haven’t got the chance to download the full service pack installer, you can quickly download and install the latest bits right from your Update Manager. However, it’s highly recommended that you to go through downloading the full installer to enjoy numerous new and enhanced samples that we included in the release.</p>
<p>You can find the new samples that I used in the walkthrough <a href="http://www.intersoftpt.com/tdn/downloads/WebGrid7_R2_SP1.zip" target="_blank">here</a>. To try it, simply copy the entire folder into the root project of WebGrid C# Samples. I’ve excluded the references to WebGrid and other framework assemblies to reduce the download size, although I decided to include the ISNet.Data.Linq assembly for your convenience.</p>
<p>Enjoy and happy developing!</p>
<p>All the best,<br />
  <br />Jimmy.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2010/02/virtual-group-paging-with-client-binding-in-depth/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Introducing Virtual Group Paging In WebGrid 7</title>
		<link>http://blog.intersoftsolutions.com/2010/01/introducing-virtual-group-paging-in-webgrid-7/</link>
		<comments>http://blog.intersoftsolutions.com/2010/01/introducing-virtual-group-paging-in-webgrid-7/#comments</comments>
		<pubDate>Sat, 23 Jan 2010 12:19:38 +0000</pubDate>
		<dc:creator><![CDATA[Jimmy Petrus]]></dc:creator>
				<category><![CDATA[2009 R2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Client Binding]]></category>
		<category><![CDATA[Virtual Load]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebGrid Enterprise 7 ASP.NET]]></category>

		<guid isPermaLink="false">http://intersoftpt.wordpress.com/2010/01/23/introducing-virtual-group-paging-in-webgrid-7/</guid>
		<description><![CDATA[We’ve been heavily focusing on performance and scalability aspects in the last two versions of WebGrid. As you may have already aware, WebGrid Enterprise 7 introduces numerous noteworthy new features such as client binding, JSON serialization, virtual rendering, efficient batch update and more – which [...]]]></description>
				<content:encoded><![CDATA[<img width="353" height="270" src="http://blog.intersoftsolutions.com/wp-content/uploads/2014/09/preloadgrouptotal_thumb1-458x350.png" class="attachment-post-thumbnail wp-post-image" alt="Group totals are preloaded in advanced, allowing users to analyze data without have to expand the group row." style="float:right; margin:0 0 10px 10px;" /><p>We’ve been heavily focusing on performance and scalability aspects in the last two versions of WebGrid. As you may have already aware, WebGrid Enterprise 7 introduces numerous noteworthy new features such as client binding, JSON serialization, virtual rendering, efficient batch update and more – which elegantly address performance issues commonly found in enterprise applications.</p>
<p>The next release of WebGrid will still be strongly focused in various areas of performance to deliver even better data visualization component that is not only rich, but also speedy and highly scalable. Many of the new enhancements in the next release are designed to support combination of multiple advanced features, such as using client binding together with virtual load paging, grouping and data aggregates.</p>
<p>This post details some of the key enhancements to give you an insight for the usage in your applications.</p>
<h2>Preload Group Totals</h2>
<p>WebGrid 7 introduces a new client binding model where the data rendering is performed in the client-side instead of server-side. While there are many benefits with client binding, it falls short when it comes to extensive data aggregation such as calculating group totals on several hundreds or thousands of records.</p>
<p>The upcoming release will include a new capability to preload the group totals during server-side data fetching process, and hence eliminating the needs to compute heavy aggregation in the client-side, while maintaining the data footprint in a good balance.</p>
<p>This new feature also works along side with virtual load paging, which makes more sense on the “preloading” factor. Your users would definitely like the ability to see all group totals without have to expand each group to retrieve the rows. See the following screenshot for details.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/01/preloadgrouptotal.png"><img style="display:inline;border-width:0;" title="Group totals are preloaded in advanced, allowing users to analyze data without have to expand the group row." src="http://intersoftpt.files.wordpress.com/2010/01/preloadgrouptotal_thumb.png" border="0" alt="Group totals are preloaded in advanced, allowing users to analyze data without have to expand the group row." width="458" height="491" /></a></p>
<p>When using <strong>ServerDataSource</strong> type, the group totals will be automatically computed without additional user codes. Simply enable the <strong>PreloadGroupTotals</strong> property in <strong>ClientBindingSettings</strong> should do the job.</p>
<p>This new feature is also consistently supported by other client binding data source such as Web Service and WCF Service. Read the explanation in the latter section.</p>
<h2>Group Row Paging</h2>
<p>One of the advanced features that truly sets WebGrid apart from other Grids is its VirtualLoad™ paging capability. When enabled, virtual load retrieves only the first subset of data and then smartly loads the rest records as users scroll downward. The virtual load also uniquely supports grouping condition by displaying only the group headers and group totals in the first load. When users expanded a group row, WebGrid loads the child rows on demand via AJAX callback and then seamlessly inject it into the group row element. This gives users the feel of working with desktop apps.</p>
<p>Everything is good until your users accidentally grouped a data resulting with large amount of rows per group. It becomes worse when the Grid is working in client-binding since the rendering operation is done in the client-side. Imagine looping through thousands of records to perform string-extensive operations, the browser itself naturally refuse to complete the operation. And hence, you’ll get a prompt that ask you whether you want to stop or continue the script. Although you can choose to continue the script, it will still take several seconds to complete. This is certainly not a desirable result for most of today’s users who expecting applications with rich experiences.</p>
<p>Toward that end, we’re researching a solution that will not only address the performance issue permanently, but also works consistently across existing features and certainly with an intuitive user experience. As the result, group row paging is born.</p>
<p>With the new group row paging capability, you no longer have to worry how much data your Grid is presenting, whether they are grouped or not, whether they are filtered or not, WebGrid will display your data in the same timely fashion – consistently. To understand how group row paging works, please see the following image which also shows the new group row paging user interface.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/01/grouprowpaging.png"><img style="display:inline;border-width:0;" title="The new group row paging interface." src="http://intersoftpt.files.wordpress.com/2010/01/grouprowpaging_thumb.png" border="0" alt="The new group row paging interface." width="566" height="560" /></a></p>
<p>The above sample is using <strong>GroupRowPageSize=10</strong> configuration, which means only 10 records should be fetched in a time. As shown above, the new group row status enables users to easily understand the current state of the group row. It’s especially useful when the GroupRowPageSize is set to a larger value such as 100 (50 is the default) as users can see the current status without have to scroll back and forth to the group header. The new status bar also serves as command bar and allows room for improvements in the future, such as adding more buttons related to the group’s context.</p>
<p>Compared to the original sample without group row paging, the same group with 1,000+ rows now loads in a fraction of second, and that’s about 100x faster. The group row paging will consistently support multiple groups and other grouping-related features too.</p>
<p>It’s also noteworthy to mention that other useful features such as data editing, batch update, and row selection persistence will continue to work flawlessly along with group row paging.</p>
<h2>Virtual Load Support For Web &amp; WCF Service</h2>
<p>Still around client binding and virtual load, we’ve now added <strong>virtual grouping </strong>(means virtual load + grouping)<strong> </strong>support for WebService and WCF Service as well. In the current release, the grouping process will invoke a Select command against the underlying WebService and retrieve all groups and rows from the database, which ultimately transmit 1-2MB size of data to the client. In most cases, you’ll get a server-side exception when the data exceeded 2MB because .NET’s JSON Serialization limits it to only 2MB by default.</p>
<p>In the next release, WebGrid will automatically send a new <strong>SelectGroup</strong> option in the select arguments when it attempts to perform grouping, or perform data selection in grouping conditions. This will allow developers to handle the group retrievals based on the select operation mode in the server-side and <strong>returns only the groups information to the client</strong>.</p>
<p>Our experiment shows that virtual grouping using Web Service or WCF Service is at least 4x faster and much more efficient than using ServerDataSource, especially when the processed data is huge. That is possible because developers have granular control over the data selection process, and in this case selecting only the groups from the backend directly without have to deal with the data rows.</p>
<p>The following code snippet demonstrates how it works.</p><pre class="crayon-plain-tag">if (selectArg.OperationType == <strong>SelectOperation.SelectGroup</strong>)
{
     var groupResults = dataSource.GroupByMany(<strong>selectArg.GroupByExpression</strong>);     
     return ProcessGroupRows(groupResults, selectArg);
}</pre><p>Notice that the select operation type and group expression will be provided in the select arguments to allow developers to handle their data selection. The above sample is using LINQ to SQL to process the grouping request, which returns only the group rows required by WebGrid.</p>
<p>The two-minutes video below shows the improved performance and the user experiences when virtual load, group row paging, client binding and batch update are enabled together.</p>
<div id="scid:5737277B-5D6D-4f48-ABFC-DD9C333F4C5D:3405bbc6-cf72-48ba-81c5-c1969de58370" class="wlWriterEditableSmartContent" style="display:inline;float:none;margin:0;padding:0;">
<div><span class='embed-youtube' style='text-align:center; display: block;'><iframe class='youtube-player' type='text/html' width='604' height='370' src='http://www.youtube.com/embed/11EvYsnYl9s?version=3&#038;rel=1&#038;fs=1&#038;autohide=2&#038;showsearch=0&#038;showinfo=1&#038;iv_load_policy=1&#038;wmode=transparent' frameborder='0' allowfullscreen='true'></iframe></span></div>
</div>
<p>Furthermore, the new <strong>PreloadGroupTotals</strong> and <strong>GroupRowPaging</strong> feature that we discussed earlier can also be used with WebService/WCF Service data source type. In the client-side, WebGrid will perform the data rendering in consistent fashion, such as the new group status interface and the group loading behaviors.</p>
<h2>WebGrid LINQ Data Provider</h2>
<p>In addition to the performance and UX improvements, we’ll also ship LINQ to SQL data provider for WebGrid in the next service pack release. The new data provider greatly simplifies the codes to perform data operations using LINQ to SQL, specifically when paired together with WebGrid’s client binding.</p>
<p>The WebGrid LINQ data provider minimizes complexity and slashes dozen line of codes into one line. See the following comparison.</p>
<p>The following is the original codes that we shipped in our WebGrid 7 samples.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/01/linq_original.png"><img style="display:inline;border-width:0;" title="Original, lenghy codes required for data operation." src="http://intersoftpt.files.wordpress.com/2010/01/linq_original_thumb.png" border="0" alt="Original, lenghy codes required for data operation." width="642" height="427" /></a></p>
<p>And here’s the new approach using WebGrid LINQ Data Provider.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2010/01/linq_provider.png"><img style="display:inline;border-width:0;" title="Simplified code using WebGrid LINQ provider." src="http://intersoftpt.files.wordpress.com/2010/01/linq_provider_thumb.png" border="0" alt="Simplified code using WebGrid LINQ provider." width="642" height="243" /></a></p>
<p>One code rules it all – that’s what I really like about this new data provider. The generic-based class architecture enables you to easily instantiate the provider on any of your data model by simply passing the data type – making development more efficient and fun!</p>
<p>In this first version, the WebGrid LINQ provider will automatically handle the following select operations during client binding:</p>
<ul>
<li>Data Selection</li>
<li>Sorting</li>
<li>Filtering</li>
<li>Grouping</li>
<li>Paging and Total Rows Count</li>
<li>Group Selection</li>
<li>Group Row Paging</li>
<li>And yes, group totals too.</li>
</ul>
<p>In addition to data selection, the provider also includes full-featured transaction operations, such as:</p>
<ul>
<li>Insert</li>
<li>Update</li>
<li>Delete</li>
<li>Batch Update</li>
</ul>
<p>And now comes the best part, the LINQ data provider is free for all WebGrid licensees. To start using it in your application, simply add reference to the new assembly named “<strong>ISNet.Data.Linq</strong>” which can be found in WebGrid’s installation folder. When the enhancements are rolled out in the next service pack, I&#8217;ll post more blogs to cover how to use them in more details.</p>
<h3>Summary</h3>
<p>This blog post gives you an insight and early look on some key enhancements that we’re currently working on for the next WebGrid release. Customers who wish to test drive these new enhancements, please obtain the nightly build (and yes, we have prepared some new samples too!) by directing your email to our <a href="mailto:technical@intersoftpt.com" target="_blank">Support Team</a>.</p>
<p>We hope customers to participate in the beta testing and give feedback, so we can review and take account your feedback before wrapping up the final features. You can send your feedback to <a href="mailto:feedback@intersoftpt.com" target="_blank">Feedback Team</a> for private discussion (if your feedback includes confidential information related to your apps etc), or to <a href="http://www.intersoftpt.com/Community" target="_blank">Community Forum</a> for open, shared discussion.</p>
<p>All the best,<br />
Jimmy.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2010/01/introducing-virtual-group-paging-in-webgrid-7/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>First look: WebGrid Enterprise 7 R2</title>
		<link>http://blog.intersoftsolutions.com/2009/12/first-look-webgrid-enterprise-7-r2/</link>
		<comments>http://blog.intersoftsolutions.com/2009/12/first-look-webgrid-enterprise-7-r2/#comments</comments>
		<pubDate>Mon, 07 Dec 2009 02:02:59 +0000</pubDate>
		<dc:creator><![CDATA[Jimmy Petrus]]></dc:creator>
				<category><![CDATA[2009 R2]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[Column Action]]></category>
		<category><![CDATA[Sleek Visual Themes]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebGrid Enterprise 7 ASP.NET]]></category>
		<category><![CDATA[WebTextEditor Integration]]></category>

		<guid isPermaLink="false">http://intersoftpt.wordpress.com/2009/12/07/first-look-webgrid-enterprise-7-r2/</guid>
		<description><![CDATA[As announced in our recently released newsletter, WebUI Studio 2009 R2 will ship with an even refined WebGrid featuring a vast array of new features that you’ve been asking for months. This post will further unveil the new amazing stuff that we’ve made available in [...]]]></description>
				<content:encoded><![CDATA[<img width="426" height="270" src="http://blog.intersoftsolutions.com/wp-content/uploads/2014/09/webgrid7newuithemes_thumb1.png" class="attachment-post-thumbnail wp-post-image" alt="WebGrid7 New UI Themes" style="float:right; margin:0 0 10px 10px;" /><p>As announced in our recently released <a href="http://www.intersoftpt.com/News/November2009.html" target="_blank">newsletter</a>, WebUI Studio 2009 R2 will ship with an even refined WebGrid featuring a vast array of new features that you’ve been asking for months. This post will further unveil the new amazing stuff that we’ve made available in WebGrid 7 R2.</p>
<p>If the previous release was focused much on performance and major functionality features, then the upcoming release balances it well with bunch of visual goodness and impressive user interface features that you would love to use.</p>
<p>Well, let’s get it started!</p>
<h2>Three new sleek visual themes</h2>
<p>Designing a professional theme isn’t as easy as it seems to be – especially on the scale of WebGrid which contains dozens, if not hundreds, of user interface elements to be styled. Unlike the previous themes, each new theme now includes the styles for context menu, edit controls, ribbon, and pivot charting UI in addition to the table styles.</p>
<p>With the recent release of Windows 7, I suppose many of you, as professional developers, must have running on Windows 7 already. If you loved what you see in Windows 7, then you gotta love WebGrid’s new <strong>Windows 7 theme</strong>. See the screenshot below.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2009/12/webgrid7newuithemes.png"><img style="display:inline;border-width:0;" title="WebGrid7 New UI Themes" border="0" alt="WebGrid7 New UI Themes" src="http://intersoftpt.files.wordpress.com/2009/12/webgrid7newuithemes_thumb.png" width="502" height="318" /></a> </p>
<p>If you have been seeing too much of blue-tone colors, you may want to try something bold – giving a different and unique feel to your applications. You can now choose either a glassy, bold <strong>black theme</strong>, or a clean, metallic <strong>silver theme</strong>.</p>
<p>The following images show the pivot charting interface using the black theme and the tables using silver theme – all designed by our professional artists. Click on the image to see the large version.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_4.png"><img style="display:inline;border-width:0;" title="Pivot Charting in Black" border="0" alt="Pivot Charting in Black" src="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_4_thumb.png" width="242" height="164" /></a> <a href="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_5.png"><img style="display:inline;border-width:0;" title="Table View in Silver" border="0" alt="Table View in Silver" src="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_5_thumb.png" width="242" height="163" /></a> </p>
<p>Best of all, it only takes a property set to switch your existing theme into one of these beautiful themes. And since the themes are built into the default styles, WebGrid doesn’t produce any additional CSS output and thus keeping your page slim and fast as it was before.</p>
<h2>Win7-style column action UI</h2>
<p>An enterprise Grid no longer suffice with only advanced functionalities. Today’s users demand more – great enterprise features and also intuitive user experiences making their daily tasks even easier and simpler.</p>
<p>That said, WebGrid 7 R2 introduces a nice UI feature to do just that – new column action interface similar to Windows 7 Explorer. We’re glad to be able to make it happen in this release due to huge demand and requests from our valued customers.</p>
<p>So what exactly is column action? It’s a small visual hint that appears when you hover on a column. When clicked, certain options that applicable to the column’s context will be displayed. The column action essentially allows user to conveniently access on column-related actions through a single click. Haven’t got the big picture yet? Try it in your Vista or 7’s Explorer, or see the following shot.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2009/12/columnactionbasic.png"><img style="display:inline;border-width:0;" title="ColumnAction Basic" border="0" alt="ColumnAction Basic" src="http://intersoftpt.files.wordpress.com/2009/12/columnactionbasic_thumb.png" width="433" height="240" /></a> </p>
</p>
<p>The above sample shows the basic column action, which displays WebGrid’s built-in context menu by default. The column action style can also be customized – which is also well styled in existing and new themes.</p>
<p>Another interesting capability that you will really love is the possibility to customize the entire column action behavior. For a quick instance, how about showing customized predefined date filtering commands? Or possibly an embedded calendar allowing users to select a date and see all files modified by that date? </p>
<p>Well, all the above scenarios can be elegantly done by overriding the new <strong>OnColumnAction</strong> event. And even better, you can do beyond that and anything that only your creativity limits. The following image shows the new WebGrid sample that displays a custom context menu in the column action UI.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2009/12/columnactioncustom.png"><img style="display:inline;border-width:0;" title="ColumnAction Custom" border="0" alt="ColumnAction Custom" src="http://intersoftpt.files.wordpress.com/2009/12/columnactioncustom_thumb.png" width="600" height="414" /></a> </p>
<p>I hope you’ve got your appetite boosted thus far <img src="http://blog.intersoftsolutions.com/wp-includes/images/smilies/simple-smile.png" alt=":)" class="wp-smiley" style="height: 1em; max-height: 1em;" /> More impressive features are following.</p>
<h2>New WebCalendar Custom Editor</h2>
<p>In addition to many UX enhancements, this new WebGrid release also revisits some basic and common functions such as editing controls. Although we already have built-in Calendar edit type since version 3, it quickly decline on user’s expectations due to its outdated UX and navigation. As the result, the new WebCalendar custom editor is now introduced.</p>
<p>The new WebCalendar custom editor is based on our flagship <a href="http://www.intersoftpt.com/WebScheduler" target="_blank">WebScheduler’s</a> calendar, which runtime is loyalty free when integrated with WebGrid. The WebCalendar provides numerous advanced features not available in the built-in Calendar edit type – such as multiple months display, show week numbers, strong localization support, date format customization and much more.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_8.png"><img style="display:inline;border-width:0;" title="New Vista-style Calendar" border="0" alt="New Vista-style Calendar" src="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_8_thumb.png" width="600" height="319" /></a> </p>
<p>The new WebCalendar editor also has revolutionary navigation built into its main UX. Instead of showing a long list of years to choose from, WebCalendar groups the years and show them in the main WebCalendar’s user interface – allowing users to conveniently navigate between months, years and decades in a more intuitive way. And the best of all, it <strong>shows 2x faster</strong> than the built-in Calendar – thanks to the lightweight component design.</p>
<h2>WebTextEditor Integration</h2>
<p>Rich text editing integration is probably one of the most requested features since 2004 when we first pioneered the custom editor architecture that introduces robust interfaces to manage existing server-side controls as WebGrid’s edit control. One of our goals was to create a truly rich editing environment where users can write rich formatted text, perform spell checking, uploading files asynchronously – all within the WebGrid’s sophisticated inline editing environment.</p>
<p>The vision of rich text editing integration is successfully completed in WebGrid 7 R2 with the addition of new WebTextEditor custom editor.</p>
<p>Released in 2009 R1 earlier this year, <a href="http://www.intersoftpt.com/WebTextEditor" target="_blank">WebTextEditor</a> is perhaps the world’s most advanced rich text editing component where all functions are so thoughtfully designed and highly integrated – that includes inline spell checker, built-in media gallery, natural UX design and real-time file uploading (hey, you can even see the progress in the sleek-designed status bar) as well as dozens of innovative features not available else where! And the best part is that you can now enjoy all these powerful features inside WebGrid’s inline editing.</p>
<p>To give you a big picture on the editor integration, please see the following screenshot taken from the new reference sample.</p>
<p><a href="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_9.png"><img style="display:inline;border-width:0;" title="WebTextEditor Integration" border="0" alt="WebTextEditor Integration" src="http://intersoftpt.files.wordpress.com/2009/12/grid7ui_9_thumb.png" width="600" height="380" /></a> </p>
<p>Since the WebTextEditor is a pure ASP.NET server-side control, you can easily customize everything – from the design aspects, behaviors to any single feature. When integrated to WebGrid, notice that it&#8217;ll automatically add the “Update” and “Cancel” command in the toolbar.</p>
<p>Also please be noted that WebTextEditor is sold separately as a standalone product, which is part of <a href="http://www.intersoftpt.com/WebUIStudio" target="_blank">WebUI Studio 2009 Suite/Subscription</a>. If you’ve got an active subscription, rest assured you’ll enjoy the new editor integration support without any additional costs when it comes out.</p>
<h2>And More</h2>
<p>There are so much more that can’t be detailed in this single post. Some noteworthy top-requested features are improved designer, context menu customization, new client-side events for batch update and UI customization, advanced column filter, and XHTML document type support.</p>
<p>By now, you have learnt some of the top features available in the upcoming WebGrid release. I also hope that it won’t be taking too long to pass the new bits to your hand so you can get started with all these exciting new features.</p>
<p>Got questions, comments or feedback? Please post it in the blog’s Comments section. Thank you!</p>
<p>All the best,    <br />Jimmy.     </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2009/12/first-look-webgrid-enterprise-7-r2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Rich Features in Low Client Footprint</title>
		<link>http://blog.intersoftsolutions.com/2009/09/rich-features-in-low-client-footprint/</link>
		<comments>http://blog.intersoftsolutions.com/2009/09/rich-features-in-low-client-footprint/#comments</comments>
		<pubDate>Mon, 21 Sep 2009 11:33:54 +0000</pubDate>
		<dc:creator><![CDATA[jemmyh]]></dc:creator>
				<category><![CDATA[2009 R1]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[Client Footprint]]></category>
		<category><![CDATA[IIS 7]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[WebGrid]]></category>

		<guid isPermaLink="false">http://intersoftpt.wordpress.com/?p=918</guid>
		<description><![CDATA[Continuing an existing discussion on client footprint optimization especially when a lot of features in WebGrid are enabled, I’ve decided to do a little research on the best way to compress these client resources with a balanced server load yet acceptable compression result. In this [...]]]></description>
				<content:encoded><![CDATA[<p>Continuing an existing <a href="http://www.intersoftpt.com/Community/WebGrid/JavaScript-Footprint/" target="_blank">discussion</a> on client footprint optimization especially when a lot of features in WebGrid are enabled, I’ve decided to do a little research on the best way to compress these client resources with a balanced server load yet acceptable compression result.</p>
<p>In this research, I’m running on Windows 7 Professional, IIS 7.5, Visual Studio 2008 SP1, and HttpWatch Professional installed with WebGrid Enterprise&#8217;s samples.</p>
<h2>The Challenges</h2>
<p>Using the Enterprise sample with all features enabled, the total size of client resources &#8212; including javascript and styles &#8212;  is around 1.2 mb with all compression disabled. This would be a potential issue for users in remote area with slower internet connection.</p>
<p align="center"><img class="aligncenter size-full wp-image-921" title="No_Compression" src="http://intersoftpt.files.wordpress.com/2009/09/no_compression.png" alt="No_Compression" width="544" height="325" /></p>
<p align="center"><em>Without compression, the client resources size is around 1.2 mb.</em></p>
<h2>The Solutions</h2>
<p><strong>SmartWebResources’ Compression Technology</strong></p>
<p>SmartWebResources™ technology not only introduces unique architecture for hassle-free deployment, it also comes with built-in compression feature with a reasonable result. Simply put the key below in your web.config to enable the compression:</p>
<p><code>&lt;add key="ISNet.WebUI.ISRes_Compressed" value="true" /&gt;</code></p>
<p style="text-align:left;">The result will look like the screenshot below.</p>
<p style="text-align:center;"><img class="aligncenter size-full wp-image-922" title="SWR_Compression" src="http://intersoftpt.files.wordpress.com/2009/09/swr_compression.png" alt="SWR_Compression" width="544" height="325" /></p>
<p align="center"><em>The SmartWebResources’ squeezes client resources to 680 kb, saves roughly 60%.</em></p>
<p><strong>IIS 7 Dynamic Compression</strong></p>
<p>The latest IIS now offers easy customizability in more user friendly format. Unlike its previous version, compression can be enabled without having to edit a certain .config file. You can enable/disable the compression directly in the IIS Manager.</p>
<p><img class="aligncenter size-full wp-image-920" title="IIS_Manager" src="http://intersoftpt.files.wordpress.com/2009/09/iis_manager.png" alt="IIS_Manager" width="544" height="314" /></p>
<p>If you wish to learn more about IIS 7&#8217;s compression, please<a href="http://www.iis.net/" target="_blank"> click here</a>.</p>
<p>The default compression level is 7. The compression level in IIS is, fortunately, customizable although you won&#8217;t find this setting anywhere else in the documentation.</p>
<p>To change the compression level in IIS 7, run the following syntax from command line:</p>
<p><code>[WinDir]System32inetsrvappcmd set config /section:httpCompression<br />
/[name='gzip'].staticCompressionLevel:[CompressionLevel]</code></p>
<p>The acceptable value for compression level is 1 &#8211; 10. Setting the compression level to 10 will instruct the IIS to use the best compression quality which produces the smallest output. While it’s great to be able to compact the client resources and deliver very small output to client, it requires a more powerful server for heavier processing and overhead.</p>
<p>In my opinion, the default level is the best option for web applications that run on moderate servers. It doesn’t compress as much as level 9 or 10, but offer less overhead on the server.</p>
<p><img class="aligncenter size-full wp-image-919" title="IIS_Compression" src="http://intersoftpt.files.wordpress.com/2009/09/iis_compression.png" alt="IIS_Compression" width="544" height="325" /></p>
<p align="center"><em>IIS 7 Compression (level 7)</em></p>
<h2>Conclusion</h2>
<p>If you have the direct access to the deployment server which used IIS 7, IIS compression is definitely the best solution to keep your applications speedy with low client resources footprint. However, if you’re hosting your web applications in a shared server, or if you don&#8217;t use IIS 7 yet, then SmartWebResources compression is your best choice. It may not compress as much as IIS, but it still offers reasonable compression result with much lower server overhead.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2009/09/rich-features-in-low-client-footprint/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Implement Drag and Drop to WebScheduler using WebDragDropExtender</title>
		<link>http://blog.intersoftsolutions.com/2009/07/implement-drag-and-drop-to-webscheduler-using-webdragdropextender/</link>
		<comments>http://blog.intersoftsolutions.com/2009/07/implement-drag-and-drop-to-webscheduler-using-webdragdropextender/#comments</comments>
		<pubDate>Mon, 20 Jul 2009 06:29:17 +0000</pubDate>
		<dc:creator><![CDATA[erikaa]]></dc:creator>
				<category><![CDATA[2009 R1]]></category>
		<category><![CDATA[Products]]></category>
		<category><![CDATA[Drag and Drop]]></category>
		<category><![CDATA[WebDesktop]]></category>
		<category><![CDATA[WebDragDropExtender]]></category>
		<category><![CDATA[WebGrid]]></category>
		<category><![CDATA[WebScheduler]]></category>

		<guid isPermaLink="false">http://intersoftpt.wordpress.com/?p=736</guid>
		<description><![CDATA[In WebScheduler, events can be dragged and dropped from one cell to another cell in scheduler area. Related to this functionality, we have received requests to support drag and drop behavior from another control to WebScheduler where a new event will be created upon the [...]]]></description>
				<content:encoded><![CDATA[<p>In WebScheduler, events can be dragged and dropped from one cell to another cell in scheduler area. Related to this functionality, we have received requests to support drag and drop behavior from another control to WebScheduler where a new event will be created upon the drop action. Using Build 217 or higher, it is now possible to implement drag and drop behavior from another control to WebScheduler, with the help of WebDragDropExtender control.</p>
<p>WebDragDropExtender allows you to add drag and drop behavior between server or HTML controls. When implementing drag and drop behavior to WebScheduler, you can use any controls as DragControl as long as the drag behavior has been implemented in that control. In this blog, WebGrid is used as DragControl, as the drag behavior is a built-in implementation in WebGrid.</p>
<p>First, add WebScheduler and WebGrid to a page. Ensure all the events and data is displayed properly in both controls before you continue to the next step.</p>
<div id="attachment_737" style="width: 310px" class="wp-caption aligncenter"><a href="http://intersoftpt.files.wordpress.com/2009/07/both-controls-bound.png"><img class="size-medium wp-image-737" title="Both WebScheduler and WebGrid are configured to display data" src="http://intersoftpt.files.wordpress.com/2009/07/both-controls-bound.png?w=300" alt="Both WebScheduler and WebGrid are configured to display data" width="300" height="180" /></a><p class="wp-caption-text">Both WebScheduler and WebGrid are configured to display data</p></div>
<p>In WebScheduler, the <strong>AllowDropFromExtender</strong> property needs to be enabled and the editing capabilities need to be enabled as well.</p>
<p>Next, add WebDragDropExtender control to the page. Add WebGrid in DragControls collection and WebScheduler in DropControls collection of WebDragDropExtender.</p>
<p>The following steps are needed to add WebGrid in DragControls collection:</p>
<ol>
<li>Choose DragControls property and open WebDragControl Collection Editor dialog box.</li>
<li>Set WebGrid’s ID as the value of ControlID property.</li>
<li>Choose AdvancedProperties and AdvancedProperties dialog box will be opened.</li>
<li>Check <em>Enable special integration with Intersoft control checkbox</em> and check <em>Allow dragging on checked rows </em>checkbox. Note that WebGrid should have rowchecker-typed column.</li>
<li>Press OK in both dialog boxes.
<p><div id="attachment_741" style="width: 310px" class="wp-caption aligncenter"><a href="http://intersoftpt.files.wordpress.com/2009/07/dragcontrol.png"><img class="size-medium wp-image-741" title="WebDragControl Collection Editor dialog box" src="http://intersoftpt.files.wordpress.com/2009/07/dragcontrol.png?w=300" alt="WebDragControl Collection Editor dialog box" width="300" height="162" /></a><p class="wp-caption-text">WebDragControl Collection Editor dialog box</p></div></li>
</ol>
<p><br />
The following steps are needed to add WebScheduler in DropControls collection:</p>
<ol>
<li>Choose DropControls property and open WebDropControl Collection Editor dialog box.</li>
<li>Set WebScheduler’s ID as the value of ControlID property.</li>
<li>Type the following attributes: <em>Type=Custom,ComponentType=WebScheduler,DropableOnCell=True</em>, in AdvancedProperties property.</li>
<li>Press OK.
<p><div id="attachment_742" style="width: 310px" class="wp-caption aligncenter"><a href="http://intersoftpt.files.wordpress.com/2009/07/dropcontrol.png"><img class="size-medium wp-image-742" title="WebDropControl Collection Editor dialog box" src="http://intersoftpt.files.wordpress.com/2009/07/dropcontrol.png?w=300" alt="WebDropControl Collection Editor dialog box" width="300" height="127" /></a><p class="wp-caption-text">WebDropControl Collection Editor dialog box</p></div></li>
</ol>
<p><br />
Finally, add OnDragStart and OnDragDrop client-side events in WebDragDropExtender control. </p>
<p>Add the following code in OnDragStart client-side event. The code will reinitialize drop controls every time the drag behavior started. This is needed because the selected view mode in WebScheduler might be different every time a drag behavior started, e.g: when user first drags a row and drop it to WebScheduler, the active view mode is Day view. Then, he changes the view mode to Month view. In this case, the drop controls needs to be reinitialized in order for the drag and drop behavior to work perfectly.</p><pre class="crayon-plain-tag">function DragStart(controlId, e)
{
      var obj = ISGetObject(controlId);
      obj.ReinitializeDropControls();
}</pre><p>In OnDragDrop client-side event, you can implement the drop action according to your scenario. In this case, we will implement the code to add a new event according to the active view mode.</p><pre class="crayon-plain-tag">function DragDrop(controlId, e, dropObject)
{
  if (dropObject.IsSubObject)
  {
     var dropItem = dropObject.SubObjectContext;

     if (dropItem.ItemType == "Cell" || dropItem.ItemType == "AllDayCell")
     {
        var s = ISGetObject("ws1");

        var subject = e.DragObject.Data.Rows[0].GetCell("Subject").Text;
        var startTime = "";
        var endTime = "";
        var allDayEvent = false;
        var resourceID = "1"; //currently hardcoded
        var el = dropItem.Element;

        switch (s.ViewSettings.SelectedViewMode)
        {
           case "Day":
           case "Week":
              if (dropItem.ItemType == "AllDayCell")
              {
                 allDayEvent = true;
                 startTime = endTime = s.GetDateTimeByCellElement(el, "Date");
              }
              else
              {
                 startTime = s.GetDateTimeByCellElement(el.children[0], "DateTime");
                 endTime = AddMinutes(startTime, 30);
              }

              if (s.IsInSplitViewMode)
                 resourceID = s.GetResourceByCellElement(el.children[0]).ResourceID;

              break;

              case "Month":
                 allDayEvent = true;
                 startTime = endTime = s.GetDateTimeByCellElement(el, "Date");
              break;
        }

        CreateNewEvent(resourceID, subject, startTime, endTime, allDayEvent);

        return true;
     }
  }
  return false;
}</pre><p>Now, you can drag a row from WebGrid and drop it to WebScheduler in any cell area that you want. The selected dropped area is indicated by a dashed line border in the cell, enabling user to easily see whether or not the selected droppable area is the correct date and time to drop the object.</p>
<div id="attachment_743" style="width: 310px" class="wp-caption aligncenter"><a href="http://intersoftpt.files.wordpress.com/2009/07/drag-behavior.png"><img class="size-medium wp-image-743" title="WebGridRow is dragged to WebScheduler" src="http://intersoftpt.files.wordpress.com/2009/07/drag-behavior.png?w=300" alt="WebGridRow is dragged to WebScheduler" width="300" height="185" /></a><p class="wp-caption-text">WebGridRow is dragged to WebScheduler</p></div>
<p>When the row is dropped, a new event will be created in the selected cell area. Note that previously <em>abc</em> row is dragged from WebGrid and dropped to 12 PM cell area. After it’s dropped, a new event with <em>abc </em>as its subject, will be created in 12 PM cell area with 30 minutes duration (can be specified in the code).</p>
<div id="attachment_744" style="width: 310px" class="wp-caption aligncenter"><a href="http://intersoftpt.files.wordpress.com/2009/07/drop-behavior.png"><img class="size-medium wp-image-744" title="A new event is created when the row is dropped to WebScheduler" src="http://intersoftpt.files.wordpress.com/2009/07/drop-behavior.png?w=300" alt="A new event is created when the row is dropped to WebScheduler" width="300" height="186" /></a><p class="wp-caption-text">A new event is created when the row is dropped to WebScheduler</p></div>
<p>This drag and drop behavior is applicable in view modes that include cells in its layout, so Agenda, Year, and Quarter views are not supported. You can download the sample <a title="Drag and Drop sample" href="http://www.intersoftpt.com/tdn/downloads/WebSchedulerDragAndDrop.zip" target="_blank">here</a>. Feel free to give feedback or comments. Have a great day !</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.intersoftsolutions.com/2009/07/implement-drag-and-drop-to-webscheduler-using-webdragdropextender/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
