Gizmox - Guy Peled's Blog

Guy Peled's thoughts on development, and what ever...

  Home  |   Contact  |   Syndication    |   Login
  43 Posts | 1 Stories | 9 Comments | 5 Trackbacks

News

This is a testing of mashup....

Article Categories

Archives

Post Categories

Blogs I Read

Favorites

Resources

Visual WebGUI Related

Monday, October 19, 2009 #

Visual WebGui 6.3.11 was released after we had a major breakthrough with an issue that had been with us from day one of the Visual WebGui designer. I guess most of you are used to reopening the designer after certain actions. You can imagine that we had sleepless nights thinking about this issue as we aim at perfection and this issue is far from being some thing you can live with. 

The issue I am talking about is this issue, which as its id (642) indicates is a long standing issue that has a few related issues.

The irony of it all is that all the hours spent on finding this issue resolves in simply deleting one extra disposing call. When renaming forms, changing certain parts of the code and some more places, Visual Studio requires the designer to reload and that simulates the closing and opening the designer but obviously not perfectly as one service required to be left between the first loading and the second one.

The new release is available for download here.

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sunday, August 02, 2009 #

I would like to direct your attention to an interesting article targeted for Web developers and more specifically ASP.NET developers who would like to learn a way to focus their development efforts on algorithms, requirements and business logics using a new, highly productive, boosted web development paradigm which provides maximal flexibility, interoperability and interactivity with any other web applications, controls set and architectures.

The article compares between traditional web development paradign represented by ASP.NET and a new approach represented by Visual WebGui.

To read the article click here.

 

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Thursday, July 16, 2009 #

The following post is taken from an article that explore the differences, pros, cons and usages scenarios of the Server empowered web architecture of Visual WebGui and on the other side the Client empowered web architecture features by solutions such as Classic AJAX, Flex/Flash, Classic Silverlight, Java Applets.

Both server and client empowered solutions can support any kind of UI look & feel using Silverlight or rich AJAX.

Client empowered applications support the highest performance in applications that data interactions are less common than pure UI/animations/media interactions.

Gaming, animations, and, most of the editors are not security critical applications so that client solutions are valid for those, however, server empowered solutions and more specifically Visual WebGui is much more secured by design.

Client footprint is the parameter representing the download weight as a function of the application’s complexity. When client UI interactions, animations, and media are more common, and the software updates frequency is relatively low, then client solutions tend to be more efficient regardless their weight. However, in any other case the small & static footprint of Visual WebGui server empowered paradigm is much more efficient and reasonable.

Client empowered solutions are virtually more scalable as they reduce mass responsibilities from the server. However, when the intensiveness of data interactions is higher than UI changes or heavy animations and media, Visual WebGui server empowered paradigm provides the best scalable and redundant solution.

ull virtualization of the desktop environment i.e. Registry and File system is enabled within Visual WebGui server as a complementary service, providing full virtualization of desktop environment for web/cloud applications.

Media, streaming and animations based applications, require the flexibility of Silverlight and Flash client based applications, the set of tools offered in this family of development tools is more graphic designer oriented and adapted. Visual WebGui server empowered paradigm with single layered object oriented code, desktop like form designer, point & click customization, and data designed set of controls, developer gains great advantage when developing data/business centric application. It simplifies and cuts about 90% of this kind of apps development time.

Maintaining single layered object oriented code is preferable in all cases than any kind of multiple layers and technologies. Even Silverlight which enables Dot.Net in the client requires the establishment of application .NET client & XAML infrastructures and .NET server code as data infrastructures in different layers.

The same tools are available for web UI (DHTML/Silverlight) customization whether the architecture is client empowered or server empowered. However, customizing data controls and business functional UI is enhanced and boosted with the Visual WebGui server empowered paradigm point & click controls designer.

Sharing WPF/Silverlight XAMLs, code & resources may result in some level of presentation freedom (enabling the use of the same application from multiple devices and media). Though, the complete decoupling of Visual WebGui server empowered paradigm code from the presentation layer provides full capabilities to choose any device as an alternative presentation layer (plain browsers, Silverlight, Flash, mobile devices, smart clients etc).

You can read the original article here...

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Visual WebGui 6.3.8a was released today as a fix to the following issues of the Visual WebGui 6.3.8 platform:

VWG-5087 - IE-Button: The right-side border should be rendered in the correct position
VWG-4256 - Button with 21x21 image should not crop image with button size of 25x25
VWG-5091 - OpenFileDialog non-Flash should not throw JS error (while calling parent.Upload_CloseWindow())
VWG-5092 - OpenFileDialog non-Flash should not hang when OK button pressed
VWG-5093 - OpenFileDialog in Flash mode should not throw JS error while Obscuring active
VWG-5090 - OpenFileDialog non-Flash should show frames around the buttons

Click here to download all 6.3.8a versions...

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Tuesday, July 07, 2009 #

Visual WebGui Web & Cloud platform version 6.3.8 was released today.

This is a further stabilization of 6.3.x that includes some resolved button behavior issues, as well as features such as Flash 10 uploading compatibility and the ability to configure a virtual directory.

The full v6.3.8 change log can be found here.

Click here to download Visual WebGui 6.3.8...

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Monday, July 06, 2009 #

Being ASP.NET based Visual WebGui is coded, parsed and executed on top of .NET and is most native application nature for Windows Azure, Amazon and other cloud providers.

Having an optimized received & sent data actually concludes in lowering the transportation and the costs when it comes to cloud deployment. The highest request-per-second compared to any other AJAX infrastructure proves the simple fact!, the CPU is much less occupied with allocations & disposals of objects and results again with lowering CPU usage and  the costs of  cloud deployment.

The internally optimized support for application scalability and redundancy enables cloud applications to scale as much as needed seamlessly.

Having a mechanism that saves the smallest amount of data required for state persistence, results in keeping the amount of data transactions low as possible.

Visual WebGui's WinForms identical API and desktop compliant development patterns, and visual WebGui capabilities of supporting  desktop's richness on web  make it only natural to port desktop business centric apps to the cloud using Visual WebGui maintaining  the same UI without the need to completely restructure and rewrite.

You can read more about the Visual WebGui technology here and view the Visual WebGui Catalog sample running on Azure cloud here.

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Monday, July 02, 2007 #

Wiktor Zychla has assembled a tiny AJAX framework contest between Visaul WebGui, ASP.NET AJAX and Ajaxium. Comparing a givven scenario he checked bandwidth consumption, requests per second, etc. The results as Wiktor wrote them are: "The VWG is an undoubt winner. It did a great job of serving the highest number of requests per second, 422, and is also a clear winner regarding the amount of data sent to and from the server."

Contest context

More than two years ago we've built a small web application used to collect and print documents required to participate in secondary school final examinations in Poland. The application is used quite extensively by people from all over the country.

The application, maturzysta.vulcan.pl, is located here.

From the web developer's point of view there is one interesting aspect of the main form of the application: there are about 30 dropdown lists with complicated logic between their selections: when you change the selection in one list, few others should be cleared or repopulated with context-bound data. There is also quite a lot of validation of various dependencies between user's selections.

The first version of the application was built as a server-side application: all SelectedIndexChanged events were auto-postbacked and processed on the application server. This caused a lot of trouble since the heavy form had to be sent to and fro the server.

The year later we've completely redesigned the application, moving the interface logic to the javascript. The web traffic problem has been solved but two other appear. First of all - no one likes javascript, it's clumsy and error-prone. Then - we had to disable ASP.NET page validation mechanism because otherwise the page content modified on the client-side would be rejected on the server-side as potentially dangerous.

In the meantime, few promising AJAX frameworks appeared and we thought that it would be possible to go back to the initial version of the application but instead of expensive postbacks we could take the AJAX approach and replace postbacks with callbacks. This could solve all problems: reduce the traffic and still keep the application logic on the server-side.

Read more...

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Monday, May 14, 2007 #

There is a new .NET2.0 open source package that comes with an installation that enables to work with the open sources as you work with the normal SDK. Working with the installed open source provides a quick way to fix your own bugs and to contribute to the VWG community. You can see in this web cast exactly what it means to start working with the open source version instead of using the normal SDK.

The new installation will provide developers a real easy way to better understand the VWG framework. You can even debug your project and enter into VWG code which provides a great insight into the framework bits and bites.

As always the sources can be found with in the projects section (quick link).

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sunday, May 06, 2007 #

A new version has been released and it includes many bug fixes and lots missing functionality implementation mainly with in the DataGridView control. There are also lots of new features that had been requested by developers including redirecting, clipboard support, Invoking client side scripts, Calendar first day support, ListView auto resize and more.

The DataGridView control has been added many missing implementations including selection management and events, deleting rows, resizing columns and rows, changing captions and visibility, alternative row style and more. You should be aware that previous versions of VWG had added the DataGridView control with lots of unnecessary definitions. While not harmful in the previous version, in the new one those different properties are working and could cause unwanted behaviors. You should clean up the InitializeComponent code from the different DataGridView definitions keeping only the positioning,dimensioning and data source attributes.

We are currently also working on a Vista theme that will be released soon. The site demo has already updated to work with the new theme.

For a more detailed change see the issue tracker here.

As always you can download the latest version from here.


  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sunday, April 29, 2007 #

AJAX has been breaking new grounds almost every day, with over 150 AJAX frameworks, there are plenty of options to choose from and one might say too many. Most of the AJAX frameworks provide you with browser extension libraries that will help you utilize the browser and interact with the server in a more productive way. What they are trying to do in most cases is to provide larger building blocks to achieve your goals by abstracting the calls to the browser API and to the server.
 
The last is a significant improvement over the plain vanilla browser coding but you are still writing your application in a very poor environment with very poor developer tools and your end result is a JavaScript application vulnerable in terms of security, manageability and your IP protection.
 
When you are writing enterprise applications which are actually business apps, the security, productivity, manageability and IP issues of AJAX development are becoming a real turn off. Applying SSL to your application can only bring you so far, as you are still exposing server services for the client to consume through plain old JavaScript and running business logic which can easily be hijacked using a simple script debugger. Also the different AJAX frameworks still in most cases force you to write your application mainly in client side JavaScript code which has its limits and productivity issues. The most obvious issue regarding JavaScript UI programming is lack of design time capabilities but that is only the tip of the iceberg.
 
Server based AJAX is a recent addition to the AJAX frameworks arena and it basically changes the way we think about AJAX applications. It introduces a concept of server based computing for web applications where your code runs entirely on the server and reflecting changes to the client. This concept is used widely in remote desktop or application streaming software, but has not been until now available for web developers.
 
The server based AJAX concept provides great benefits for developers in terms of productivity, manageability and usability. Currently the only available framework implementing full server based AJAX is Visual WebGui (http://www.visualwebgui.com ) which provides full WinForms like API and design time capabilities for developing web applications. While it sounds very much like Google's GWT it is not, as it does not serialize the application code to JavaScript but rather uses it in runtime on the server and reflecting the UI to the client. This means that you have what can be called an "empty client" that is managed entirely by the server. Client events are sent to the server that in turn, return its update commands to the client reflecting changes made to the UI on the server. This process can be optimized in various scenarios explicitly to reduce the amount of server callbacks and bandwidth consumption, making the end result as responsive as standard AJAX applications.
 
There are some down sides to the server based AJAX concept, mainly in terms of scalability, as you are utilizing a server session to run your application but when applied to enterprise applications, rather then Amazon sized sites, you get a very nice ROI that you would not get in any other architecture. In terms of responsiveness and performance one would think that this concept lacks, but the opposite is the case, as the server uses fewer resources in terms of CPU and IO as it does not have to receive/return large blobs and most important does not need to construct and deconstruct the application classes on every request.  Also as said before there are many optimizations that can be applied to reduce server callbacks and bandwidth consumption.
 
The server based AJAX concepts may just be the solution for enterprise AJAX applications as it provides these applications with the best of both worlds. Having a responsive, rich AJAX UI that behaves pretty much like desktop UI, but still maintaining the productivity, IP protection, and security of running the application on server side provides a compelling offering for enterprises.
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Tuesday, April 10, 2007 #

Visual WebGui is....
 
User-Friendly – Visual WebGui was designed to be the next VB6 for the web. Simple to program, simple to deploy. With a full WinForms API and design time support you can start developing complex AJAX applications in seconds with no web know-how.
 
Secured – Visual WebGui was designed to provide for military grade secured AJAX applications by eliminating client side service consumption and business logic processing using an empty client concept. The browser is used as a looking glass to the server that runs the application.
 
Productive – With full WinForms API and design time support, Visual WebGui is almost as productive as R.A.D. platforms without limiting your options. Debug your application the same way you would debug any .NET application free of script debugging nightmares.
 
Powerful – Visual WebGui was designed to support enterprise class applications with unlimited complexity supported by full object oriented programming. Using our unique AJAX transport, Visual WebGui applications consume 1% of bandwidth compared to any alternative AJAX framework.
 
Feature-Rich – Visual WebGui contains most of WinForm's components including non trivial implementations of controls such as the PropertyGrid that provides a simple way to edit live objects. 
 
Supported - Visual WebGui is supported by its Core Team of developers and a dedicated international community. Through online forums and our support@visualwebgui.com mail box support is always close at hand (commercial support will be available soon).
 
Easily Installed – Visual WebGui comes with a simple installation that will get you started on developing your AJAX application in no time. Visual WebGui's toolbox and templates are integrated into Visual Studio so they are always available.
 
Localized – Visual WebGui includes full .NET and WinForms multi-language localization support which allows you to localize your application in the designer the same way you localize a WinForms application.
 
Open Source – Visual WebGui SDK is provided free, as open-source software, and licensed under a standard GPL agreement. It allows individuals to do whatever they wish with the application framework, both commercially and non-commercially.
 
Cutting-Edge – Visual WebGui provides the developer with full object oriented .NET support allowing utilization of all the .NET capabilities including reflection, generics and more. This is enabled by a unique architecture that provides an alternative HTTP processing pipeline that does not include serializing JavaScript.
 
Extensible – Visual WebGui is provided with many customization and extensibility features including custom control creation, theme creation and gateways.
 
Interopable – As an extension to ASP.NET, Visual WebGui can also interact with standard ASP.NET pages hosting them within your Visual WebGui application or calling Visual WebGui dialogs and forms from your ASP.NET code.
 
Visual WebGui's roadmap includes…
 
Mono deployment - Allowing your Visual WebGui application to run on non Microsoft servers (Visual WebGui for .NET 1.1 is already compatible with mono).
 
Legacy to web – Migrating WinForms or VB6 applications to web with out rewriting your application.
 
Dual mode deployment – Deploy your Visual WebGui application as a desktop application or a web application enjoying the best of both worlds.
 
 
Visual WebGui is built on top of Microsoft ASP.NET (C#) platform and extends it by providing WinForms like development for web applications. The most recently released version is 5.81.3.74.4b.
  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Thursday, March 15, 2007 #

Version 5.81.3.74.4b is available and contains lots of bug fixes and some new exciting features that had been requested by many developers. This is a partial list of the changes (See change log to a more detailed list):

Localizing Visual WebGui internal resources support - All of Visual WebGui internal resources where gathered into one resx file that will be available for download and translation. The compiled localized assembly resources will be available from the download area titled "language pack". The compiled resources assembly should be added to the Visual WebGui bin directory under a directory matching the culture code (.NET standard). The language pack will contain the resx file so developers can localize them to there own language. Localized files should be sent to support@visualwebgui.com with the related language culture code in this format xx-XX (example en-US). The language pack will be updated in a every time a new resx file or updates to an existing one will be available.

Custom date formating - The DateTimePicker control now supports the CustomFormat property which enables to define the date format as your users are used to. The date format also include the ability to edit time and to use enumeration instead of integers (Month,Day and AM/PM enumerations). To preserve compatibility with existing applications we added configuration keys which enables to define the default DateTimePicker format as it was before this enhancement (It does not prevent you from using the custom format attribute but provides you a way to define the Long,Short and Time built in formats). By default a DateTimePicker is initialized with the Long format.

These are the configuration keys (values are formated in the WinForms DateTimePicker custom format syntax):

<LongDateFormat Value="MM/dd/yyyy"/> 

<ShortDateFormat Value="MM/dd/yyyy"/>

<TimeFormat Value="hh/mm/ss tt"/>

Support None anchoring - This feature which is a WinForms feature provides you the ability to position controls relative to the center. This means that if you position a control and remove both its left anchoring and right anchoring it will stay in the horizontal position relative to the center you assigned. This means that you can center controls with out doing complex layouts. If you remove all anchoring definitions the control will be position relatively to its original distance from the design time container center.

Added support for Application.ThreadException - This is a static event that provides you with a mechanism to catch unhandled errors. By handling this event you prevent unhandled errors sent you your user. Instead you can catch this error and display a friendly error or you can choose to email this error automatically to the system administrator.

ASP compatible mode - Visual WebGui now supports working in ASP compatible mode which provide your application the same threading model (Single Threaded Apartment) as classic ASP applications. This enables you to use single threaded apartment components from your old ASP application. This feature is an implementation of the ASPCompat mode of the ASPX pages so you can read about it in the ASP.NET documentation.

ErrorProvider design time and run time support - The new ErrorProvider provides the same capabilities as the WinForms component meaning that you can attach an error icon to any control which is anchored or positioned in a table layout. This feature is demonstrated here in a video tutorial.

Full ToolBar support - The new ToolBar allows to add text aligned to the right or to the bottom and to change the button size using larger icons. To implement a large icon layouted ToolBar you have to use the ImageList control (the same way you would have done it in WinForms). This feature is demonstrated here in a video tutorial.

Embedding Visual WebGui in an ASPX page - This is enabled thanks to a new control that was added to the library called FormBox. The FormBox control is an ASP.NET control that can be used from an ASPX page to embed Visual WebGui forms. The FormBox comes with an Arguments and Results collections to enable to interaction between the Visual WebGui application and the container ASPX page. You can see a demonstration of this feature at the end of this video tutorial. 

Enhanced designer support - Many critical bugs where fixed and lots of improvements to control's design time support such as the StatusBar control and the ErrorProvider control. There are still known bugs regarding working with menus in VS2003 and some missing design time features such as Copy/Paste that will be added and fixed in the next versions.

For a more detailed change see the issue tracker here.

As always you can download the latest version from here.

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Saturday, November 11, 2006 #

Yes I know I have not written for a long time.  I was kind of thinking about blogging and all and I did not get my self to start writing. Any way there is a new Visual WebGui version with extensibility features and we are working on supplying at last documentation. God knows way but documentation seems to be the hardest part of the development process and yes we all know its a very important part of any product.  Documentation is on the way....

As always you can find the new version here: http://sourceforge.net/projects/visualwebgui.

 

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Sunday, August 20, 2006 #

The new version contains many bug fixes and performance enhancements and the change log can be viewed at http://support.visualwebgui.com.

As always you can find the new version here: http://sourceforge.net/projects/visualwebgui.

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati

Tuesday, August 08, 2006 #

There is a new version fixing a critical bug found in the last version regarding a new capability for boosting performance by caching resources in run time. The bug caused an error to be thrown when the application was executed which detailed a permission denied error on writing a file to the “C:\windows\system32“. Just to clear things up, Visual WebGui does not require these permissions and normally it does not attempt to write the disk. 

In order to test the new performance boosting capability a definition should be added to the WebGUI section:

<StaticResources Mode="On" />

There could be some permission issues with this feature as it uses a physical directory to store cache. You should add a "Route" directory under the site root and give it write permissions to avoid permission issues.

There is also a new Timer component that basically works just as the WinForms timer works. It is new feature that is still under QA. It is critical that you call Timer.Stop() or Timer.Enabled=false before the containing component dies as currently timers are not destroyed automaticly. Timers don't work currently by default and should be enabled by adding a definition to the WebGUI section:

<TimersEnabled Mode="On"/>

When this feature is released this definition will not be nacecery.

There is also a new configuration key called PrivateVersion that allows developers to add custom cache version dependency. The private version is concated to the public version cache key and enables invalidation of cache in cases like theme development or custom controls. The cache key is used both client side and server side so by changing the private version you actually are invalidating also all client cache. The private cache is used as following in the WebGUI section:

<PrivateVersion Value="2"/>

If the current public cache version is "1.24" the cache key will be "1.24.1".

As always you can find the new version here: http://sourceforge.net/projects/visualwebgui.

  • Share This Post:
  • Share on Twitter
  • Share on Facebook
  • Share on Technorati