Category Archives: 2008 R1

WebCallOut Integration with FlyPostBack in SP2

WebUI Studio.NET 2008 Service Pack 2 has delivered many nice enhancements and features. One of the enhancements available in this later service pack is the integration between WebCallOut and FlyPostBack (AJAX) functionality.

I have received feedback from our customers mentioning that WebCallOut is merely a UI component without AJAX/server-side featuer in behind. By integrating WebCallOut and Intersoft’s FlyPostBack architecture, I’m glad to announce and prove that the newly-born WebCallOut is not as simple as it looks, but rather a pure, real and powerful similar to the other Intersoft’s components so far.

With this new enhancement added into WebCallOut, you can now assign WebCallOut’s Text or Title not only from client side, but also from server side via FlyPostBack. This new enhancement will certainly add flexibilities in using WebCallOut and therefore results in more advanced scenarios supported.

In order to perform FlyPostBack, simply add OnShow server side event in WebCallOut. In OnShow server side event, add the below code. 
protected void WebCallOut1_Show(object sender, ISNet.WebUI.WebDesktop.WebCallOutEventDataArgs e)
{
        e.Title = "New Title with FlyPostBack";
        e.Text = "New Text with FlyPostBack";
}

OnShow server side event will be triggered when just before WebCallOut is about to appear/show.

If you are using WebCallOut with ContentMode = “UseTemplate”, then you can change the control(s) in the template with this below approach.    
protected void WebCallOut1_Show(object sender, WebCallOutEventDataArgs e)
{
        WebCallOut callout = sender as WebCallOut;
        Label label = callout.FindControl("Label1") as Label;
        label.ForeColor = System.Drawing.Color.Green;
        label.Text = "New Text with FlyPostBack";
}

For better understanding, I provide WebCallOut’s lifecycle illustration.

Standard lifecycle FlyPostBack lifecycle

Hopefully this integration can help developers to gain better web experience. Quoting Intersoft’s motto, we are striving to deliver the best WebUI components that have “insights for a better web experience” for both developers and users.

Best Regards,
Budianto Muliawan.
Software Architect, Intersoft Solutions Corp.

Loading SmartWebResources from GAC


As promised, the Service Pack 2 of WebUI Studio.NET 2008 is now available. You can download it from Developer Network portal. SP2 includes several new enhancements, and by far the most stable version that we ever release for 2008 R1 lifecycle. It’s highly recommended for existing customers and prospects to install and use SP2.

One of the enhancements in SP2 is the ability to use SmartWebResources feature in GAC scenario. As you may already aware, SmartWebResources is designed to reduce the resources dependencies during development and deployment. The resources are made up with Javascript files, images, stylesheets and other client files that might be needed by the component.

With its unique architecture, SmartWebResources is separated from the main assembly for security purpose, and for easy replacement. This way, developers can simply grab the new resources (which may contain updates or fixes) and replace the existing resources without making impact on the server side assemblies.

Recognizing the “plug and play” nature, the SmartWebResources are designed to be located in private bin of the Web application since the initial development. However, we have received numerous requests from customers who wanted to put the Resources assemblies in GAC (Global Assembly Cache) instead of in private bin folder. The reasons? There are several, some said they require all assemblies to be in GAC for easier product packaging, some said it is requirement due to the usage within SharePoint.

So, in this SP2, we manage to make it happen. Developers can now install the SmartWebResources to GAC during deployment, and still have the component to be able to locate them properly through settings in web.config. Several of new settings have been introduced to allow the main component to locate the Resource assembly, which is listed in the following:

<add key=ISNet.WebUI.Resources.LoadFromGAC value=true/>
<add key=ISNet.WebUI.Resources.FrameworkVersion value=3.0.5000.112/>
<
add key=ISNet.WebUI.Resources.WebGridVersion value=6.0.7200.112/>
<add key=ISNet.WebUI.Resources.[OtherProductName]Version value=“[Major.Minor.Revision.Build]/>

The LoadFromGAC key is an absolute requirement, which tells the WebUI.NET Framework to load SmartWebResources assembly from GAC.

The other keys are the version of each product which Resources should be look up from GAC. The FrameworkVersion is for the ISNet.WebUI.Resources.dll’s version. The other products are using [ProductName]Version pattern, for example, WebGridVersion, WebComboVersion, WebDesktopVersion and so on.

You might be wondering why the version need to be supplied for the Framework to load the assembly from GAC. The reason is that loading assembly from GAC require full assembly name format, and that the full assembly format should include the exact version of the assembly. While we can automatically detect the current running version of the main component assembly, customers may feel it is too strict since they may have several version of Resources, and may want to choose different set of Resources’ version.

So, that’s all for now. Hopefully you liked this new SP2 enhancement. By the way, we also have several new samples and important updates in SP2, make sure you check out SP2 Release Notes.

All the best,
Jimmy.

Firefox 3 support, WebUI Studio Service Pack 2, and more.

I have just realized that it has been almost 1.5 months since my last blog post. That must be due to the overwhelming busy in the preparation for the TechEd event that we attended last month. Well, “roller coaster” season has passed, and we’re now back at the full speed heading to our next target.

In case you are not aware, Mozilla has recently released Firefox 3.0. While it promised some cool features, and nice enhancements in DOM and CSS area, it contains a dozens of breaking and regression. It’s not so surprising, as we have constantly experienced the breaking from one major version to another. For instance, the onblur event is no longer working properly. Another example, FireFox no longer recognizes <font face=”Webdings”>. It doesn’t even work if you put it in the style of DIV. So what does that mean? Say bye-bye to imageless solution that used Unicode font to display nice Web icons.

Despite of several breaking changes in FF3 that affect our products, we have tested that 95% of major functions are working as expected. You might, however, notice several minor layout issues such as shrinked column header in WebGrid and weird sorting indicator. But, nothing to worry – as we have planned the Firefox 3 support to be steadily availabe in this month’s hotfix (or possibly inclusion in Service Pack 2).

On the other hand, we have also aware on several new browsers release such as IE8, although still in beta. There is also Opera 9.5 – finally – after a long beta. Fortunately, unlike Firefox, Internet Explorer and Opera are much better in maintaining compatibilities and less regression. I personally have tested our UIs on both IE8 and Opera 9.5 — both worked flawlessly.

WebUI Studio.NET 2008 in Internet Explorer 8 (note: Emulate IE7 is turned off).

WebUI Studio.NET 2008 in Opera 9.5.

Finally, just before landing to our next target for 2008 R2, we plan to release Service Pack 2 for WebUI Studio.NET 2008 R1 by sometime next week, which includes all latest hotfixes, several nice enhancements in WebAqua, WebScheduler and WebGrid, plus some cool samples.

Best Regards,
Jimmy.

[MissingFieldException]: Field not found:’ISNet.WebUI.ProductInfo.Is2008Product’

We released WebUI Studio.NET 2008 R1 last March, which contains all products included in WebUI Studio.NET 2007 R2, plus 2 new components (WebAqua and WebScheduler). Customers who have purchased WebUI Studio.NET 2007 R2 can obtain the latest build included in WebUI Studio.NET 2008 R1 using Update Manager or My Components in TDN2.
The following error will likely to occur after you apply the new build:

[MissingFieldException]: Field not found:’ISNet.WebUI.ProductInfo.Is2008Product’.

To fix this issue, simply update the WebUI.NET Framework to the latest build (build 559 or higher), which can be obtained from Update Manager or My Components in TDN2. Don’t forget to copy the new assemblies to your project’s bin folder. And last but not least, clear the .NET Temporary Files cache to ensure you have used the latest build version.

Dicky-Support Engineer
Intersoft Solutions

Use custom Editing Form in WebScheduler.NET

WebScheduler.NET comes with built-in advanced editing form. However, we received some feedbacks on how to use custom editing form in WebScheduler. Here are the steps to implement that.

  • Create the custom editing form and set the EditingUrl property. The custom editing form used in this sample uses .NET standard control. Advanced client behavior can be implemented manually.
  • Add the following code in OnEditingFormShow client side event. The code is needed to reload the editing form every time it’s opened.

    function WebScheduler1_OnEditingFormShow(controlId, action, eventView, eventType, newType)  
    {   
         var WebScheduler1 = ISGetObject(controlId);    
         var dlg = WebScheduler1.EditingDialogBox;  
         var path = “./EditingForm_Custom.aspx?action=” + action;   
         if (action == “Edit”)       
              path += “&eventID=” + eventView.GetOriginalObject().EventID;
         dlg.SetContentURL(path);   
         return true;  
    }

You can manually implement the database updates in the custom editing form. After you save the changes to database, you need to refresh the scheduler so the changes can be displayed in the scheduler. In this sample, I use the following code to call the Refresh method after save action.

server side:
Page.ClientScript.RegisterStartupScript(typeof(Page), “OnLoad”, “Load();”, true);

client side:
function Load()  
{      
     var wnd = window.parent;
     var scheduler = wnd.ISGetObject(‘WebScheduler1’);
     scheduler.EditingDialogBox.CloseDialog();
     scheduler.Refresh();
}

To close the dialog box, use the following code:

var wnd = window.parent;
var scheduler = wnd.ISGetObject(“WebScheduler1”);
scheduler.EditingDialogBox.CloseDialog();

Note that you are unable to add custom fields in the editing form, because WebScheduler architecture has not supported it yet. Don’t worry though, we will implement the extensibility feature in next version of WebScheduler, which would be available in WebUI Studio.NET 2008 R2.

For further information, please try this sample. Note that you need to use the latest WebScheduler.NET build 112, which can be retrieved from Update Manager. This build is newer than the one included in WebUI Studio.NET 2008 R1 SP1.

Custom Editing Form

As usual, please send any feedback to feedback@intersoftpt.com 🙂

2008 R1 Service Pack 1 delivered…

The long-awaited service pack 1 of WebUI Studio.NET 2008 R1 is finally here. We’ve made significant updates and enhancements to all areas of the products based on the feedback that we received since the initial release.

Two of the most noteworthy enhancements are:

  1. Strong x64 bit support in all version of Windows (including XP, Vista and Server 2003/2008). All our assemblies are now fully compatible with native 64bit mode IIS Web application. So, if you’re deploying to Windows Server x64 edition, you should upgrade your Web application to 2008 R1 SP1.
     
    Note that the x64 bit support doesn’t require separate assembly, so each single assembly can be used in both x32 and x64 environment.
     
  2. New Charting runtime engine for Pivot Charting feature in WebGrid.NET Enterprise 6.0. If you’ve deployed applications using Pivot Charting feature, reading this Whitepaper is a must!
     
    The new, built-in Charting runtime engine is a royalty free component that is OEM licensed, and redeveloped by our engineers to meet the full backward compatibility with previous runtime engine that we licensed from third party. In this new Service Pack, we no longer distribute the runtime engine from the previous third party Charting component.

There are also dozens of exciting enhancements, such as full RTL support in WebScheduler as mentioned in Erika’s post and significantly updated WebScheduler documentation. We also included the large data enhancement for WebGrid and ISDataSource in this Service Pack 1.

For full list of fixes, new features and enhancements, make sure the “Read release notes” checkbox is checked in the last screen of the installation. Get Service Pack 1 now!

All the best,
Jimmy.

Several Enhancements in WebScheduler.NET 1.0 SP1

The development team has made several enhancements to WebScheduler, which will be available in WebUI Studio.NET 2008 R1 SP1. The following are some of the enhancements.

WebScheduler now works fine in x32 and x64-bit machine.

 WebScheduler in x64 machine

When RTL mode is enabled, all elements in the page will be displayed right to left. WebScheduler.NET 1.0 SP1 now supports RTL mode. Note that all elements is displayed correctly, along with the more div elements, the drop shadow, and event’s callout.

WebScheduler in RTL mode

SelectedDate and SelectedViewMode values are persisted during flypostback.

Persist SelectedDate and SelectedViewMode values during postback

In Month view, user can navigate to other view by clicking either the day header or the week header. A new property, EnableNavigateToOtherView, is added to determine whether or not this behavior should be enabled. If disabled, no action will be performed when user clicks the headers.

Added some client side events related to editing form.

New client side events

If you have other feedbacks regarding WebScheduler.NET, feel free to send them to feedback@intersoftpt.com.