First Looks

Web.UI 3.0: Improve Your Web Site

ComponentArt's Web.UI 3.0 provides a variety of tools that help you bring your Web site to life. Each component includes broad functionality and excellent documentation and sample code.

ComponentArt's Web.UI 3.0 for ASP.NET provides a set of GUI components that helps you create interactive Web sites. Web.UI provides Menu, TreeView, NavBar, TabStrip, MultiPage, SiteMap, Rotator, Calendar, Grid, Callback, and Snap components that utilize Asynchronous JavaScript And XML (AJAX)-style callbacks (see Figure 1). Each component is also fully featured and supported with solid documentation and sample code.

p> AJAX callbacks are designed to give the strength of server-side functionality with great efficiency. They minimize the amount of communication required between the client and the server to give the user a more responsive environment.

The Menu, TreeView, NavBar, TabStrip, Grid, and Calendar tools are ASP.NET implementations of old friends. Web.UI provides full-featured implementations of these tools, complete with custom designers, property pages, and solid runtime controls. Web.UI further supports broad client-side and server-side capabilities. The client-side functions use scripts to give your forms basic operations, such as the ability to change components, color, visibility, and content. Note that the components themselves provide an interactive feel through their properties. On the menu, for example, these properties control whether a menu is expanded when the user's mouse hovers or whether a click is required. Server-side functions support more sophisticated interactions through postbacks and server-side events.

Web.UI's other components are more Web-oriented. MultiPage, for instance, supports loading a series of pages that you can move on the client side without requiring callbacks to the server. SiteMap provides a tool for presenting a Web site map to users in a variety of layouts. In addition to full-page layouts, it also offers a drop-down format that you could easily fit on a page that performs other functions.

Rotator provides functionality similar to a stock ticker or slide show in a variety of formats. Snap allows you to add docking areas, complete with drag and drop, to your pages. Callback acts as a wrapper for other ASP.NET content, allowing other client-side controls to utilize the efficiency of AJAX callbacks.

ComponentArt provides a wide variety of documentation and sample code for Web.UI, as well as a live tutorial that does an excellent job of demonstrating all of Web.UI's capabilities. ComponentArt's support staff is responsive and knowledgeable.

Deployment of Web.UI does require some simple manual steps that are well documented. I would like to see ComponentArt develop a wizard to walk you through deployment, though this is not a major burden.

Note that you can purchase each tool separately, which ranges from $99 to $399. Snap is available for free. Purchase of the package allows you to use the product on your company's Web sites. Resale of the components packaged into products requires a more expensive license.

Web.UI gives you a great deal of control over the look and feel of your product. The client-side features allow you to develop responsive and scalable functionality.

Web.UI 3.0 for ASP.NET
ComponentArt
Web
: www.componentart.com
Phone: 416-622-2923
Price: $799
Quick Facts: GUI tools for ASP.NET.
Pros: Eight full-featured navigation and presentation tools that you can use to create highly interactive Web pages.
Cons: An installation wizard would be a good addition to Web.UI.


Convert C# to VB
by Ken Cox

Instant VB converts your C# source code into VB. The bare-bones user interface lets you navigate to the C# project you want to convert, to a directory of projects, or to a text area where you can paste in C# snippets (see Figure 1). The downloadable software comes as a single .NET executable inside a ZIP file. There is no installer, so you need to copy the executable to a directory and create your own shortcuts.

The converter works well when fed straightforward C# code with fairly standard formatting. Simply paste a function into the snippet converter, and get back usable, understandable VB.

Notes are embedded comments that provide the original line of code and a brief explanation about what was done, such as "This 'for' loop was translated to a VB 'Do While' loop." To-do tasks (spelled TODO in the code) mark sections that require developer intervention, such as instances where VB.NET has "no equivalent" syntax to C#. Instant VB deals with the difference in case-sensitivity between C# and VB by tacking a "_Renamed" suffix on some variables.

For a real challenge, I pointed Instant VB at the C# source code for a sophisticated 3-D rendering engine. The tool produced a Visual Studio project file and a set of VB classes to parallel the C# version. It reported the conversion of 4,855 lines in two seconds with 83 notes and 38 to-do tasks. At 38 to-do tasks, the translator seriously underreported the number of trouble spots, leaving syntax errors of its own. When I alerted Tangible's support (anonymously) and provided samples, they replied promptly and posted a bug-fix build overnight. The fix handled jagged string arrays and do/while loops containing an end-of-line comment—the cause of many errors. However, check your C# carefully for pointer-oriented code. According to the vendor, it "usually isn't possible" to convert that code to VB.

I'd like to see Instant VB provide an automated feedback mechanism when it can't convert code cleanly. Customers could select a troublesome snippet and post it to a Web service for subsequent analysis and bug fixing. Also, if the conversion tool reports that "assignments within expressions are not supported in VB.NET," it could insert a comment pointing to documentation that helps you understand the issue and perhaps suggests a hack. It also needs a summary report on notes and problems, including filenames and line numbers. As it stands, the best post-conversion reporting tool is Visual Studio's error list.

Instant VB produces a great deal of acceptable, well-formatted code at a good clip and offers a fair 15-day money-back guarantee on top of a trial version. Its challenge is to reduce further the percentage of unconverted content and provide more documentation help when manual intervention is necessary.

Instant VB
Tangible Software Solutions
Web:
www.tangiblesoftwaresolutions.com
Phone: 604-930-9949
Price: $159
Quick Facts: Converts C# solutions, projects, files, and snippets to VB.NET.
Pros: Converts large amounts of well-formatted code quickly; satisfaction guarantee.
Cons: Doesn't create workarounds for unsupported VB functions; leaves behind syntax errors; insufficient reporting.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube